gpt4 book ai didi

Python RoboBrowser 自动搜索功能

转载 作者:行者123 更新时间:2023-11-28 17:35:50 24 4
gpt4 key购买 nike

这段代码有什么问题?它适用于 duckduckgo.com,但不适用于 google、wikipedia 或 yahoo。是的,我正在根据特定网站更改 ID。

import re
from robobrowser import RoboBrowser

browser = RoboBrowser()
browser.open("https://en.wikipedia.org/wiki/Wikipedia")

# Must find the proper id in the html
form = browser.get_form(id = "searchInput")
form

form["searchval"].value = "Beethoven Opus 131"
browser.submit_form(form)

links = browser.get_links()

for link in links:
print(link)

print("Le Fin.")

我每次都会收到以下错误(duckduckgo.com 除外)

line 16, in <module>
form["searchval"].value = "Beethoven Opus 131"
TypeError: 'NoneType' object is not subscriptable

为什么我会在这里收到 NoneType 错误?我知道该变量之前未定义,但 Duckduckgo 也未定义。请帮忙。

最佳答案

首先,您错误地定位了表单。具有 id="searchInput" 的元素是一个 input 元素,而您需要一个 form 元素 - 它具有 id="searchform"

此外,由于有 2 个提交按钮,您需要让 robobrowser 使用哪一个:

form = browser.get_form(id="searchform")
form["search"].value = "Beethoven Opus 131"
browser.submit_form(form, submit=form.submit_fields['go'])

为我工作。

关于Python RoboBrowser 自动搜索功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30654076/

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