lihu5841314 发表于 2021-7-24 20:22

好久没发帖了 发个selenium版回忆回忆

fromselenium   import webdriver
fromselenium.webdriver.common.by import By
fromselenium.webdriver.support.wait import WebDriverWait
import selenium.webdriver.support.expected_conditions asEC
import time,requests,os
from multiprocessing.dummy import Pool

url = 'https://www.renrendoc.com/paper/137639109.html'
# 声明浏览器对象,将chromedriver驱动放在chrome浏览器安装目录下,指定驱动的绝对路径
browser = webdriver.Chrome(executable_path=r'C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chromedriver.exe')
wait = WebDriverWait(browser, 10)



try:
    browser.get(url)
    foriinrange(2):
      
      wait.until(EC.presence_of_element_located((By.CLASS_NAME, 'fc2e')))# 等待fc2e元素加载完成
      keyword = browser.find_element_by_class_name('fc2e')         # 获取元素
      browser.execute_script('arguments.click();',keyword)    # 用selenium的js点击元素当然也可以用.clink(有些个别的点不了)
      time.sleep(2)
    browser.execute_script('window.scrollTo(0,document.body.scrollHeight)')   #将滚动条滚到底部玩法很多比如豆瓣电影排行榜的ajax就可以用这个爬
    time.sleep(1)
    wait.until(EC.presence_of_element_located((By.ID, 'page')))
    doc = browser.find_element_by_id('page')
    docs = doc.find_elements_by_tag_name('img')
    imgs = []
    for iindocs:
         img_url = i.get_attribute('src')
         imgs.append(img_url)
finally:
    browser.close()


headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36',
}

def res(url):
    name = url.split('-')[-1]
    resp = requests.get(url,headers=headers).content
    path = 'imgs' + '/' +name
    withopen(path,'wb') asf:
         f.write(resp)
    print('下载完毕')

pool = Pool(4)
ifnotos.path.exists('imgs'):
    os.makedirs('imgs')
pool.map(res,imgs)
pool.close()
pool.join()
print('over')







lihu5841314 发表于 2021-7-24 20:24

自己占一楼selenium虽然慢些 但有些需要解密的网站 不需要解密了   功能很牛皮

rettrey 发表于 2021-7-24 20:49

真的有人会爬虫用selenium吗?这个好像一般都用在测试吧?

lichunlin688 发表于 2021-7-24 21:05

的確是大牛

lihu5841314 发表于 2021-7-24 21:13

rettrey 发表于 2021-7-24 20:49
真的有人会爬虫用selenium吗?这个好像一般都用在测试吧?

很多得加密网站爬不下来 就用selenium   试试 很好用

ttxp 发表于 2021-7-24 21:59

这里是回忆了

那年夏天52 发表于 2021-7-24 22:08

rettrey 发表于 2021-7-24 20:49
真的有人会爬虫用selenium吗?这个好像一般都用在测试吧?

要知道selenium本身就是一个自动化工具,而不是自动化测试工具。国人爱用来做测试而已。

Threat1024 发表于 2021-7-25 08:45

虚无空幻 发表于 2021-7-25 10:41

人这运气,昨天我还在搜,今天直接看到主页有人发,em..... 考虑要不要来张彩票

lihu5841314 发表于 2021-7-25 10:43

虚无空幻 发表于 2021-7-25 10:41
人这运气,昨天我还在搜,今天直接看到主页有人发,em..... 考虑要不要来张彩票

必须来一张500万的
页: [1] 2
查看完整版本: 好久没发帖了 发个selenium版回忆回忆