美文网首页人生苦短,我用Python我爱编程虫虫
8 使用自动化神器Selenium爬取动态网页(案例三:爬取淘宝

8 使用自动化神器Selenium爬取动态网页(案例三:爬取淘宝

作者: 怂恿的大脑 | 来源:发表于2018-02-02 22:00 被阅读42次

    Selenium 是一个用于浏览器自动化测试的框架,可以用来爬取任何网页上看到的数据。

    selinim,京东淘宝反爬严重

    image image

    http://http://npm.taobao.org/mirrors/chromedriver/2.33/

    image

    环境变量设置:我的电脑-右键属性-高级设置-环境变量--

    image

    注意环境变量添加好后,需要重启pycharm,不然报错。

    环境搭建好后,环境测试代码如下:

    使用代码测试:

    from selenium import webdriver #导入包

    driver = webdriver.Chrome() #打开Chrome浏览器

    driver.get('http://www.baidu.com') #输入url,打开百度首页


    运行结果如下

    image

    3 Selenium的优缺点

    优点:Selenium可以爬取任何网页的任何内容,因为它是通过浏览器访问的方式进行数据的爬取,没有网站会拒绝浏览器的访问。

    缺点:时间以及内存消耗太大,所以大规模爬虫不会用。


    image

    webdriver相当于浏览器,我们选择chrome浏览器。


    4 Selenium的操作

    driver.find_element_by_name()

    查找符合条件的单个元素

    driver.find_elements_by_name()

    查找符合条件的一组元素

    点击查看更多操作


    使用代码测试:

    from selenium import webdriver #导入包

    from selenium.webdriver.common.keys import Keys

    driver = webdriver.Chrome() #打开Chrome浏览器,大写

    driver.get('http://www.baidu.com') #输入url,打开百度首页

    elem = driver.find_element_by_xpath('//*[@id="kw"]') #查找输入框,kw用双引号

    elem.send_keys('刘亦菲',Keys.ENTER) #模拟点击回车

    print(driver.page_source) #打印网页源代码

    代码运行结果如下:

    image

    指定无头浏览器

    安装

    image

    使用代码测试:

    from selenium import webdriver #导入包

    from selenium.webdriver.common.keys import Keys

    driver = webdriver.PhantomJS() #打开无头浏览器

    driver.get('http://www.baidu.com') #输入url,打开百度首页

    elem = driver.find_element_by_xpath('//*[@id="kw"]') #查找输入框,kw用双引号

    elem.send_keys('刘亦菲',Keys.ENTER) #模拟点击回车

    print(driver.page_source) #打印网页源代码


    相关文章

      网友评论

        本文标题:8 使用自动化神器Selenium爬取动态网页(案例三:爬取淘宝

        本文链接:https://www.haomeiwen.com/subject/hukyzxtx.html