1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 超实用的爬虫利器selenium 爬取豆瓣喜剧电影排行榜数据

超实用的爬虫利器selenium 爬取豆瓣喜剧电影排行榜数据

时间:2018-12-21 16:30:12

相关推荐

超实用的爬虫利器selenium 爬取豆瓣喜剧电影排行榜数据

话不多说上代码

这里依然选择的是反爬最少对新手友好的豆瓣小可爱

之前的招聘网站反爬都tui厉害。。。

selenium库和chromedriver 的环境变量问题网上都有很多教程这里不再赘述

唯一需要注意的是和楼主一样,下载好了chromedriver也配置了环境变量但是依然显示不在环境变量中的,很可能是因为chromedriver的版本问题

有的是需要查看自己的浏览器版本选择对应的chromedriver

而楼主是需要选择71-75版本之间,虽然浏览器的版本是80

from selenium import webdriverfrom mon.exceptions import TimeoutExceptionfrom mon.by import Byfrom mon.keys import Keysfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.support.wait import WebDriverWaitfrom urllib.parse import quotefrom pyquery import PyQuery as pqimport time,pandas as pdimport pandas as pd# 声明配置好的浏览器对象browser = webdriver.Chrome()url = '/typerank?type_name=%E5%96%9C%E5%89%A7&type=24&interval_id=100:90&action='browser.get(url)time.sleep(2)#如果在所有程序执行完前close掉浏览器,很多爬取定义的数据索引等属性会失效def scrape():#本页面使用ajax请求数据,拖动页面获得新数据for i in range(0,10):#想要拖动几次就执行几次browser.execute_script("window.scrollTo(0,document.body.scrollHeight)")time.sleep(2)#拖动一次增加20条电影数据scrape() yz =browser.find_elements_by_css_selector('.movie-list-item') print(yz)time.sleep(2)for i in range(0,200):print(yz[i].text)i += 1

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。