上下文:
我正在尝试编写自己的货币聚合器,因为市场上大多数可用工具尚未涵盖所有金融网站。我在树莓派上使用 python 2.7.9。
多亏了 requests 库,我设法连接到我的 2 个帐户(一个是众筹网站,一个是我的养老金)。我试图聚合的第三个网站从 2 周开始就给我带来了困难,它的名字是https://www.amundi-ee.com。
我发现该网站实际上使用的是 JavaScript,经过多次研究后,我最终使用了 dryscrape(我不能使用 selenium,因为不再支持 Arm)。
问题:
运行此代码时:
import dryscrape
url='https://www.amundi-ee.com'
extensionInit='/psf/#login'
extensionConnect='/psf/authenticate'
extensionResult='/psf/#'
urlInit = url + extensionInit
urlConnect = url + extensionConnect
urlResult = url + extensionResult
s = dryscrape.Session()
s.visit(urlInit)
print s.body()
login = s.at_xpath('//*[@id="identifiant"]')
login.set("XXXXXXXX")
pwd = s.at_xpath('//*[@name="password"]')
pwd.set("YYYYYYY")
# Push the button
login.form().submit()
s.visit(urlConnect)
print s.body()
s.visit(urlResult)
代码访问 urlConnect 第 21 行时出现问题,正文打印第 22 行返回以下内容:
{"code":405,"message":"No route found for \u0022GET \/authenticate\u0022: Method Not Allowed (Allow: POST)","errors":[]}
问题
为什么我有这样的错误信息,我怎样才能正确登录网站来检索我正在寻找的数据?
PS:我的代码灵感来自this issue Python dryscrape scrape page with cookies