zoukankan      html  css  js  c++  java
  • selenium2使用记录

    安装 pip install selenium 

    web

    phantomjs下载 :http://phantomjs.org/download.html

    浏览器驱动下载:http://www.seleniumhq.com/download

    chrome: http://chromedriver.storage.googleapis.com/index.html?path=2.22/

    #!/usr/bin/env python
    # encoding: utf-8
    from selenium import webdriver
    
    driver = webdriver.Chrome()
    url = 'http://www.toutiao.com/news_fashion/'
    
    driver.get(url)
    
    print driver.title
    

    爬取今日头条实例,使用刷新方法,来改变文章内容,暂时还不会控制鼠标滑动来实现

    #!/usr/bin/env python
    # encoding: utf-8
    import time
    from selenium import webdriver
    import itertools
    
    driver = webdriver.Chrome()
    url = 'http://www.toutiao.com/news_fashion/'
    driver.get(url)
    print driver.get(url)
    
    for x in range(2):
        driver.refresh()
        titles = driver.find_elements_by_class_name("title-box")
        contents = driver.find_elements_by_class_name("abstract")
        imgs = driver.find_element_by_css_selector(".feedimg")
        for title, content, img in zip(titles, contents, itertools.repeat(imgs)):
            data = {
                'title': title.text,
                'content': content.text,
                'img': img.get_attribute('src')
            }
            print data
        time.sleep(10)
    
    driver.close()
    

    自动登陆的例子:

    # coding:utf-8
    
    import requests
    from bs4 import BeautifulSoup
    from selenium import webdriver
    import time
    #有验证码
    driver = webdriver.Chrome()
    url = 'http://mp.sohu.com/'
    driver.get(url)
    
    driver.find_element_by_id("userid").clear()
    driver.find_element_by_id('userid').send_keys("username")
    driver.find_element_by_id("pwd").clear()
    driver.find_element_by_id("pwd").send_keys('password')
    driver.find_element_by_id("loginbutton").click()
    
    time.sleep(2)
    driver.close()
    

     scrapy+selenium+phantomjs

    class judge(Spider):
        name = "judge"
        start_urls = ["http://wenshu.court.gov.cn/List/List?sorttype=1&conditions=searchWord+2+AJLX++%E6%A1%88%E4%BB%B6%E7%B1%BB%E5%9E%8B:%E6%B0%91%E4%BA%8B%E6%A1%88%E4%BB%B6"]
    
        def init_driver(self):
            driver = webdriver.Chrome()
            return driver 
    
        def parse(self,response):
            driver = self.init_driver()
            driver.get(self.start_urls[0])
            sel = Selector(text=driver.page_source)
            self.logger.info(u'---------------Parsing----------------')
            print sel.xpath("//div[@class='dataItem'][1]/table/tbody/tr[1]/td/div[@class='wstitle']/a/text()").extract()
            self.logger.info(u'---------------success----------------')
    

      

     

      

     

  • 相关阅读:
    Centos常用命令之:文件与目录管理
    Centos常用命令之:ls和cd
    Centos6.9连接工具设置
    CentOS6.9安装
    mysql-5.7.18-winx64 免安装版配置
    Struts1开山篇
    参考用bat文件
    QT界面开发-c++ 如何在Qt中将QVariant转换为QString,反之亦然?【转载】
    QT界面开发-QAxObject 解析 excel 时报错error LNK2019: 无法解析的外部符号
    QT界面开发-QAxObject 读写excel(COM组件)
  • 原文地址:https://www.cnblogs.com/whoami101/p/5671426.html
Copyright © 2011-2022 走看看