我试图点击链接列表中的一个链接,等待一秒钟(尚未添加),然后单击下一个链接。使用硒和bs4。这是我的代码:
links = ['https://www.bing.com', 'https://www.google.com', 'https://www.yahoo.com']
for url in links:
url = "'"+url+"'"
print(url,'\n')
browser = webdriver.Firefox
browser.get(url)
这是我得到的错误:
Traceback (most recent call last):
File "C:/Users/SK/PycharmProjects/untitled/linkedin_bot.py", line 38, in <module>
browser.get(url)
TypeError: get() missing 1 required positional argument: 'url'
我究竟做错了什么以及如何解决?感谢
答案 0 :(得分:1)
您需要将<div>
更改为browser = webdriver.Firefox
。实际上,当你调用browser = webdriver.Firefox()
时,它期望一个browser.get(url)
实例作为第一个参数,一个url作为第二个参数。当您包含括号时,您正在创建webdriver.Firefox
的实例,Python会自动将其作为第一个参数。
答案 1 :(得分:0)
主要问题是&#34; url&#34;变量名称与&#34; url&#34;相同在for循环中。 尝试重命名变量。
这是修改后的代码。 我使用Chrome作为驱动程序,但您可以使用Firefox或任何其他驱动程序。 请记住更改驱动程序的可执行路径以符合您的情况。
from selenium import webdriver
import time
browser = webdriver.Chrome(executable_path='C:\Chrome\chromedriver.exe')
links = ['https://www.bing.com', 'https://www.google.com', 'https://www.yahoo.com']
for url in links:
urls = "'"+url+"'"
print(urls,'\n')
browser.get(url)
time.sleep(1)