我的问题是,我试图从一个在146个不同页面上列出它们的网站上抓取Netflix电影和电视节目的标题,因此我循环播放,尝试从所有页面捕获数据,但是,当使用循环会导致我的网址格式错误,并且我不知道如何解决它。
我确保代码的webdriver部分可以正常工作,这意味着如果我输入驱动程序的URL.get可以为我提供所需的信息,但是使用循环时,它将弹出多个firefox窗口并且不放置任何内容URL进入任何窗口。我还添加了一个延时,尝试查看它是否在使用前更改了URL,但仍然无法正常工作。
from selenium import webdriver
import time
for i in range(1,3):
URL = "https://flixable.com/?min-rating=0&min-year=1920&max-year=2019&order=date&page={}"
newURL = URL.format(i)
print(newURL)
time.sleep(10)
driver = webdriver.Firefox()
driver.get('newURL')
titles = driver.find_elements_by_css_selector('#filterContainer > div > div > p > strong > a')
for post in titles:
print(post.text)
答案 0 :(得分:0)
driver.get('newURL')
这会尝试获取字符串newURL
而不是变量。
driver.get(newURL)
这应该可以解决问题。
编辑: 顺便说一句,第二个循环应该在第一个循环内缩进。
希望这会有所帮助。祝你好运。