我有一个网站,我试图从中提取数据,但要获取我需要经历2个页面的数据:登录屏幕和第二个屏幕,我选择要读取的数据。 我的代码如下所示:
import urllib
from bs4 import BeautifulSoup
url = 'http://website.com'
values = {'userName' : 'tom',
'Login' : 'submit'}
data = urllib.parse.urlencode(values).encode('ascii')
req = urllib.request.Request(url, data)
page = urllib.request.urlopen(req)
soup = BeautifulSoup(page,'html.parser')
print(soup.text)
我的问题是如何在登录请求后提交第二个POST请求以获取我正在寻找的数据?
答案 0 :(得分:0)
通常,它总是取决于他们如何对用户进行身份验证以及他们如何存储此会话,php,基于令牌的google身份验证。不知道所有这些信息很难知道。解决这种膨胀的一种常见方法是使用无头网络浏览器。可以通过代码控制的浏览器。允许您像平常一样点击页面!
我推荐seleniumhq for python! http://www.seleniumhq.org/