小编Sát*_*iro的帖子

使用硒或要求填写表格

我试图进入此站点以检索我的银行帐户,首先我尝试使用硒,但仅填写了用户名(可能是因为它具有2种形式):

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://www.santandertotta.pt/pt_PT/Particulares.html")
user = driver.find_element_by_name("usr")
user.send_keys("user")
pas = driver.find_element_by_name("claveConsultiva")
pas.send_keys("password")
login = driver.find_element_by_id("login_button").click()
Run Code Online (Sandbox Code Playgroud)

然后,我进入了rambo模式:)试图弄清楚为什么我不能填充密码空间,以及使用请求的表单的隐藏值是什么,这是代码:

url = "https://www.particulares.santandertotta.pt/pagina/indice/0,,276_1_2,00.html"     
user_agent = {"user-agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/..."}
session = requests.session()
r = session.get(url)
soup = BeautifulSoup(r.text, "html.parser")    
data = {t['name']:t.get('value') for t in soup.find_all('input', attrs={'type': 'hidden'})}
print(data)    
Run Code Online (Sandbox Code Playgroud)

但是刚收到一个空洞的字典。通过登录和抓取进入网站的最佳方法是什么?

python selenium web-scraping python-3.x python-requests

7
推荐指数
2
解决办法
4316
查看次数