zoukankan      html  css  js  c++  java
  • Python selenium+phantomjs的js动态爬取

    Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Chrome等。
    Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。

    基于js动态加载内容爬取的另一种方法——模拟浏览器

    安装过程略。

    下面写上最简单基础的

    from selenium import webdriver
    
    
    driver = webdriver.PhantomJS()
    
    driver.get('http://www.baidu.com/')
    
    
    
    print driver.title
    driver.quit()

    输出结果:

    这样最基本的实现能解决了。

    参考

    http://www.cnblogs.com/front-Thinking/p/4321720.html

    http://blog.csdn.net/qinglu000/article/details/52240508

    ——————

    遇到问题————phantomjs没有输出,输出看不到内容

    fromseleniumimportwebdriver  
        
    importsys  
    reload(sys)  
    sys.setdefaultencoding('utf-8')  
        
    driver=webdriver.PhantomJS() #这要可能需要制定phatomjs可执行文件的位置  
    driver.get("http://www.ip.cn/125.95.26.81")  
    #print driver.current_url  
    #print driver.page_source  
    printdriver.find_element_by_id('result').text.split('
    ')[0].split('来自:')[1]  
    driver.quit  

    就是像开始因为编码问题加入这几行代码,输出看不到内容,一直以为哪里出错了,一番折腾删除后正常显示。

    importsys  
    reload(sys)  
    sys.setdefaultencoding('utf-8')  
  • 相关阅读:
    jsp中${pageContext.request.contextPath}的意思
    Linux系统(centos)同步时间方式
    Tomcat启动报错 Failed to start component [StandardServer[8005]]解决
    有根树
    轻重链剖分/长短链剖分
    CF1389G
    9.12模拟总结
    [POI2014]HOT-Hotels加强版
    可持久/可回退化数据结构
    PA2014 Muzeum
  • 原文地址:https://www.cnblogs.com/vhills/p/7388387.html
Copyright © 2011-2022 走看看