尝试从this site的左侧区域获取所有电影海报,但是我的脚本仅解析第一个并退出。
如何获取所有以.jpg
扩展名结尾的电影海报链接?
from selenium import webdriver
def fetch_image_links(driver,link):
driver.get(link)
for item in driver.find_elements_by_css_selector("a[href^='/title/'] img.loadlate[src$='.jpg']"):
print(item.get_attribute("src"))
if __name__ == '__main__':
url = "https://www.imdb.com/list/ls006385184/"
driver = webdriver.Chrome()
try:
fetch_image_links(driver,url)
finally:
driver.quit()
答案 0 :(得分:2)
打开页面时,只有前几部电影具有海报-其他所有电影均具有默认图像。 您需要向下滚动页面,等待片刻没有显示默认图像(已加载所有电影海报)
from selenium.webdriver.common.keys import Keys
default_img = "https://m.media-amazon.com/images/G/01/imdb/images/nopicture/large/film-184890147._CB470041630_.png"
def fetch_image_links(driver,link):
driver.get(link)
while driver.find_elements_by_css_selector("a>img[src='%s']" % default_img):
driver.find_element_by_tag_name('a').send_keys(Keys.PAGE_DOWN)
for item in driver.find_elements_by_css_selector("a[href^='/title/'] img.loadlate[src$='.jpg']"):
print(item.get_attribute("src"))