Python登录网页Issu

2024-04-25 12:13:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Spyder用python3.6编写我的项目。你知道吗

我已经下载了robobrowser来帮助我登录到一个网页,因为我是新的网页抓取和html。你知道吗

我理解这个过程,但是在访问表单元素时遇到了一个问题。你知道吗

from robobrowser import RoboBrowser

browser = RoboBrowser(history=True)
url1 = "example_url"

username = "example_user"
password = "example_pass"

browser.open(url1)

form = browser.get_forms()
form['username'] = username

似乎只有一个窗体,当我尝试将其转换为字符串时,它似乎找到了该窗体。出于某种原因,除非转换为字符串,否则它不会在spyder工作区中显示为变量。你知道吗

我查看了html,用户名条目的名称和id确实是“username”。我得到了错误

form['username'] = username
       TypeError: list indices must be integers or slices, not str

它不喜欢我试图通过'username'访问表单中的索引,但是这是我所看到的这个模块的所有示例中的语法。(这个链接的第一个答案是我使用的模板https://www.quora.com/What-is-the-best-way-to-log-in-to-a-website-using-Python


Tags: to项目字符串browserrobobrowserform网页表单