gpt4 book ai didi

Python:RoboBrowser 类型错误: 'NoneType'

转载 作者:行者123 更新时间:2023-12-01 07:38:32 27 4
gpt4 key购买 nike

我正在尝试抓取 Tessco.com 上某些商品的定价信息我找到了 RoboBrowser 和一些教程。按照教程,我遇到了一个错误,而海报却没有。我不确定需要修改哪些内容来纠正该问题。

代码如下:

import re
import config
from robobrowser import RoboBrowser
br = RoboBrowser(history=True)

br.open("https://www.tessco.com/login")
form = br.get_form()
form['userID'] = config.TESSCO_USERNAME
form['password'] = config.TESSCO_PASSWORD
br.submit_form(form)

查看 Google Chrome 中的检查器,我看到需要用户输入的部分的 ID 为 userIDpassword

我假设 RoboBrowser 查找表单并返回 None 的方式存在问题。

我的错误消息是:

---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-58-6c3d8fcb718d> in <module>
1 form = br.get_form()
----> 2 form['userID'] = config.TESSCO_USERNAME
3 form['password'] = config.TESSCO_PASSWORD
4 br.submit_form(form)

TypeError: 'NoneType' object does not support item assignment

我很不知道出了什么问题。有什么建议可以指引我正确的方向吗?

最佳答案

https://robobrowser.readthedocs.io/en/latest/api.html#robobrowser.browser.RoboBrowser.get_form

来自他们网站的引用:

Returns: BeautifulSoup tag if found, else None

这意味着 RoboBrowser 无法在该网站上找到表单。

找不到表单,因为 https://www.tessco.com/login 中的表单通过javascript加载。

由于 RoboBrowser 不执行 JavaScript,因此表单从未加载,因此 RoboBrowser 无法找到它。

您可能想尝试类似 selenium 的内容,它实际上运行后台浏览器,而不仅仅是加载 HTML

关于Python:RoboBrowser 类型错误: 'NoneType',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56842427/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com