selenium-chromedriver多进程(selenium)

很多人可能都没想过用selenium能做多线程爬虫
其实实现起来都是一样的简单


导入相关库
from selenium import webdriver
from multiprocessing.dummy import Pool
访问
def spider(url):
    driver = webdriver.Chrome('chromedriver')
    driver.get(url)
    html = driver.page_source
    print(html)
    driver.close()
    driver.quit()
控制
def run(x):
    url = 'https://www.baidu.com/s?wd=今天有哪些美女&pn={}'
    pages = []
    for i in range(0, x * 10, 10):
        page = url.format(i)
        pages.append(page)
    print(pages)
    pool = Pool(5)
    result = pool.map(spider, pages)
    pool.close()
    pool.join()
    return result

试一下

if __name__ == '__main__':
    run(10)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,019评论 25 708
  • Selenium入门 欢迎阅读Selenium入门讲义,本讲义将会重点介绍Selenium的入门知识以及Selen...
    厲铆兄阅读 11,939评论 3 68
  • 定义 将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 典型使...
    狐尼克朱迪阅读 221评论 0 0
  • 戴尔克·施特略夫真是个可悲的人。我搞不清楚这种人到底是抱着什么样的生活态度活着,他似乎一点自尊心也没有,情商也极低...
    去非阅读 173评论 0 0
  • ajax本来就是异步请求自然不保证执行顺序
    辉格食品阅读 205评论 0 0