Python selenium+phantomjs的js动态爬取

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

 

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

安装过程略。浏览器

 

下面写上最简单基础的服务器

from selenium import webdriver


driver = webdriver.PhantomJS()

driver.get('http://www.baidu.com/')



print driver.title
driver.quit()

输出结果:工具

 

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

 

参考ui

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

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

——————url

遇到问题————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('\n')[0].split('来自:')[1]  
driver.quit  

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

importsys  
reload(sys)  
sys.setdefaultencoding('utf-8') 
相关文章
相关标签/搜索