python3_phantomJS_test
phantomJS和selenium差不多,几乎不相上下,使用会麻烦一点,但是比selenium快很多:
# !/usr/bin/python3.4
# -*- coding: utf-8 -*-
from selenium import webdriver
# 下载phantomjs:http://phantomjs.org/download.html
# driver = webdriver.PhantomJS()
# driver.get("https://www.baidu.com/")
# data = driver.title
# print(data)
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
# 建立一个字典
dcap = dict(DesiredCapabilities.PHANTOMJS)
# 5秒超时
dcap["phantomjs.page.settings.resourceTimeout"] = 5000
# 无图模式
dcap["phantomjs.page.settings.loadImages"] = False
# 头部
dcap[
"phantomjs.page.settings.userAgent"] = "Mozilla/5.0 (iPad; U; CPU OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5"
dcap["phantomjs.page.settings.referer"] = "https://www.baidu.com/"
# 将设置加载到浏览器
browser = webdriver.PhantomJS(executable_path='C:/Python34/Scripts/phantomjs', desired_capabilities=dcap)
# 打开网址
browser.get("https://www.baidu.com/")
# 查看phantom的详细参数
cap_dict = browser.desired_capabilities
for key in cap_dict:
print('%s: %s' % (key, cap_dict[key]))
# 打印网址
print(browser.current_url)
# 加载后的页面
html = browser.page_source
# 这里可以用BS4或者xpath解析
# phantom自带的xpath和selenium一样:browser.find_element_by_xpath('//ul[@class="products"]/a')
print(html)
# 关闭虚假浏览器
browser.quit()
python3_phantomJS_test的更多相关文章
随机推荐
- JAVA利用JXL导出/生成 EXCEL
/** * 导出导出采暖市场部收入.成本.利润明细表 * @author JIA-G-Y */ public String exporExcel(String str) { String str=Se ...
- checkbox 设置不可更改
readonly="readonly" 设置不起作用 用 onclick="return false;"
- 再说最后一次!关于不再更新SkySRS的理由!
再说最后一次!关于不再更新SkySRS的理由! https://www.itiankong.net/thread-195937-1-1.html Skyfree 发表于 2012-5-1 14:53: ...
- (40) Aeroo 服务安装
服务器 Odoo 8.0 操作系统: Ubuntu trusty14.04 说明:安装aeroo 要的要两个服务 areoo-docs 和 soffice 这里设定两个端口 8989 和 8100 = ...
- C#中combobox不可编辑与不可选择
不可编辑:comboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 将Style属性改为csDropDownL ...
- 如何在CentOS 7.x中安装OpenERP(Odoo)
各位好,这篇教程关于的是如何在CentOS 7中安装Odoo(就是我们所知的OpenERP).你是不是在考虑为你的业务安装一个不错的ERP(企业资源规划)软件?那么OpenERP就是你寻找的最好的程序 ...
- ionic本质
ionic本质一开发工具,ionic项目目录里在大堆东西,一堆插件(plugins),还有一堆npm包(node_modules),其实都是骗人的-( ̄▽ ̄-)~ 什么nodejs,npm只是为了解决 ...
- Quartus ii 12.0 和ModelSim 10.1 SE安装及连接
quartus ii 10.0后就没有自带的仿真软件,每次写完一个VerilogHDL都想简单仿真一下,结果发现没有了自带仿真软件.这时候就需要第三方仿真软件ModelSim 10.1 SE. Qua ...
- Python排序算法
不觉已经有半年没写了,时间真是容易荒废,这半年过了个春节,去拉萨旅行.本职工作也很忙,没有开展系统的学习和总结. 今年开始静下心来从基础开始学习,主要分为三部分,算法.线性代数.概率统计. 首先学习算 ...
- CodeForces 688C-NP-Hard Problem
题意: 给你一个无向图,判断是否能够构成一个二分图,如果能的话,输出二分图左边的集合和右边的集合 分析: 先给每一个顶点的color初始化-1,表示没有被染色,用vector数组v[a],表示元素a所 ...