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

话不多说上代码
这里依然选择的是反爬最少对新手友好的豆瓣小可爱
之前的招聘网站反爬都tui厉害。。。
selenium库和chromedriver 的环境变量问题网上都有很多教程这里不再赘述
唯一需要注意的是和楼主一样,下载好了chromedriver也配置了环境变量但是依然显示不在环境变量中的,很可能是因为chromedriver的版本问题
有的是需要查看自己的浏览器版本选择对应的chromedriver
而楼主是需要选择71-75版本之间,虽然浏览器的版本是80

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from urllib.parse import quote
from pyquery import PyQuery as pq
import time,pandas as pd
import pandas as pd


# 声明配置好的浏览器对象
browser = webdriver.Chrome()
url = 'https://movie.douban.com/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 

超实用的爬虫利器selenium 爬取豆瓣喜剧电影排行榜数据_第1张图片

你可能感兴趣的:(python)