python - get() 缺少 1 个必需的位置参数:'url'
问题描述
运行以下代码时,我不断收到“get() 缺少 1 个必需的位置参数:'url'”的错误
import selenium.webdriver as webdriver
def get_results(search_term):
url = "https://www.google.com"
browser = webdriver.Chrome
browser.get(url)
search_box = browser.find_element_by_class_name('gLFyf gsfi')
search_box.send_keys(search_term)
search_box.submit()
try:
links = browser.find_element_by_xpath('//ol[@class="web_regular_results"]//h3//a')
except:
links = browser.find_element_by_xpath('//h3//a')
results = []
for link in links :
href = link.get_attribute('href')
print(href)
results.append(href)
browser.close()
return results
get_results('dog')
该代码应该从谷歌返回“狗”的搜索结果,但卡在
browser.get(url)
感谢所有帮助
解决方案
这个问题在浏览器的分配中,browser = webdriver.Chrome
. 它需要是browser = webdriver.Chrome()
。
在您的代码中,您不是将 chrome webdriver 的实例分配给浏览器,而是将类本身分配给浏览器。因此,当您调用时def get(self, url)
,您的 url 参数被分配给self
并且url
未提供参数,因此位置参数错误。
推荐阅读
- python - TensorFlow 保存和加载不一致
- spring-boot - 弹性4j - Spring Boot 应用程序运行失败
- python - Django CBV 如何在 2 个模型上处理不同的 pk 值?
- python - 如何使用特定数据集列使用贝叶斯岭回归绘制曲线拟合
- c++ - 读取进程内存未能读取正确的值?
- fluentd - Fluentd:相同的文件,不同的过滤器和输出
- javascript - 扩展类 Firestore
- go - 使用 Go 和云存储从 File Reader 计算 CRC32 校验和
- c# - 试图通过处理复杂的查询来获得订单
- javascript - 无法让自动断开机器人断开已在语音中的用户