在CentOS下利用Python+selenium获取腾讯首页的今日话题。
1、安装依赖包
yum install wget firefox gcc zlib zlib-devel Xvfb
2、安装setuptools
官网地址:https://pypi.python.org/pypi/setuptools
百度地址:http://pan.baidu.com/s/1i5JlRH7
tar zxvf setuptools-31.0..tar.gz
cd setuptools-31.0.
python setup.py install
3、安装selenium
官网地址:https://pypi.python.org/pypi/selenium#downloads
百度地址:http://pan.baidu.com/s/1miJfI7A
tar zxvf selenium-3.0..tar.gz
cd selenium-3.0.
python setup.py install
4、安装PyVirtualDisplay
官网地址:https://pypi.python.org/pypi/PyVirtualDisplay
百度地址:http://pan.baidu.com/s/1gf2uUBL
tar zxvf PyVirtualDisplay-0.2..tar.gz
cd PyVirtualDisplay-0.2.
python setup.py install
注意:如果提示EasyProcess相关的错误 ,请先安装EasyProcess再安装PyVirtualDisplay。
EasyProcess下载地址:https://pypi.python.org/pypi/EasyProcess 安装方法和PyVirtualDisplay一样
由于我的CentOS是没有界面的,所以需要安装PyVirtualDisplay来模拟。
5、安装geckodriver
官网地址:https://github.com/mozilla/geckodriver/releases
百度地址:http://pan.baidu.com/s/1i54YH5z
tar zxvf geckodriver-v0.11.1-linux64.tar.gz
mv geckodriver /usr/local/bin
6、Python代码
# -*- coding: utf-8 -*-
from selenium import webdriver
from pyvirtualdisplay import Display display = Display(visible=0, size=(800,600))
display.start() dr = webdriver.Firefox()
dr.get('http://www.qq.com/')
url = dr.find_element_by_css_selector('#todaytop a').get_attribute('href')
dr.get(url) #获取标题
title = dr.find_element_by_id('sharetitle').text
print(title)
#获取内容
content = dr.find_element_by_id('articleContent').get_attribute('innerHTML')
print(content) dr.quit()
执行效果:
其他资料
selenium-webdriver+python基本操作:http://pan.baidu.com/s/1nvCsmBR
在CentOS下利用Python+selenium获取腾讯首页的今日话题。的更多相关文章
- 用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
目的:使用pyhton下的unittest单元测试框架并结合selenium的webdriver来实现将腾讯首页的今日话题下的内容自动发表达到自己的cnblog里. 思路:创建QQDailyTopic ...
- 利用 Python + Selenium 实现对页面的指定元素截图(可截长图元素)
对WebElement截图 WebDriver.Chrome自带的方法只能对当前窗口截屏,且不能指定特定元素.若是需要截取特定元素或是窗口超过了一屏,就只能另辟蹊径了. WebDriver.Phant ...
- Docker环境下运行python+selenium+chrome
Docker环境下运行python+selenium+chrome docker运行时占用的资源非常少,而且能将环境进行有效的隔离,可以快速的进行部署,因此可以将docker与selenium结合实现 ...
- CentOS下利用Docker部署Surging
原文:CentOS下利用Docker部署Surging 1. 安装Centos, 配置固定ip配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33`` ...
- 【Linux】CentOS下升级Python和Pip版本全自动化py脚本
[Linux]CentOS下升级Python和Pip版本全自动化py脚本 CentOS7.6自带py2.7和py3.6 想要安装其它版本的话就要自己重新下载和编译py其它版本并且配置环境,主要是软链接 ...
- centos下搭建python双版本环境
目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...
- centos下利用mail命令进行邮件发送
centos下默认自带mail命令: 可以用如下命令查看存放位置: which mail 结果如下: 如果没有安装可以使用 如下命令安装 yum -y install mailx 利用mail命令进行 ...
- Mac OS下应用Python+Selenium实现web自动化测试
在Mac环境下的自动化测试环境搭建这里有一篇亲测通过的文<mac下怎么搭建selenium python环境?>. 不过在这个过程中要注意两点: 1.在终端联网执行命令“sudo pip ...
- Windows10下使用python+selenium实现谷歌浏览器的自动控制
第一 谷歌浏览器一直是开发人员最喜欢的浏览器,python爬虫在进行抓包时尤其好用,今天为大家带来python+selenium进行自动化控制的安装教程 安装selenium windows下在cmd ...
随机推荐
- git 常用命令总结
git是什么就不用说了,全世界都在用git.这里仅仅纪录git在mac上的一些使用命令(终端输入)操作,作为自己的备忘录,这里不做教程,下面会附上峰哥的教程. 1.安装git 最简单的安装方法,就是直 ...
- (转)System.Drawing.Color的颜色对照表
经常使用System.Drawing.Color, 本篇介绍一下颜色与名称及RGB值的对应关系. 1. 颜色与名称的对照表(点击下图放大看): 2. 颜色与RGB值对照表: Color.AliceBl ...
- 各种Android手机Root方法
Root的介绍 谷歌的android系统管理员用户就叫做root,该帐户拥有整个系统至高无上的权利,它可以访问和修改你手机几乎所有的文件,只有root才具备最高级别的管理权限.我们root手机的过程 ...
- 在cygwin部署hadoop出现的问题:$ ./bin/hadoop version 显示错误: 找不到或无法加载主类 org.apache.hadoop.util.VersionInfo
解决方案 找到hadoop主目录的bin文件夹下的hadoop文件,将倒数第二行 exec "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS $CLASS & ...
- VMWARE修改CPUID
在cmd shell下执行wmic cpu get ProcessorId命令,可是查看机器的cpuID,但这个命令显示的只是2组ID,实际CPUID,有4组 通过更改虚拟机配置文件.vmx可是实现任 ...
- java 深入技术七(类的结构和反射)
1.java反射(reflect) java 类的结构 java反射机制就是把java类按结构分解,每一部分对应特定的反射类 java反射机制允许运行时加载,探知和使用在编译期间完全未知的classe ...
- ABAP 特性值取数 非BAPI方式
特性值在ausp,objnr 一般是客户号或是客户号拼接的,客户号加特征字段特征类别就可以取了
- js创建命名空间
CreateNameSpace: function () { var nameSpaceObjec = arguments[0].split('.'); var currentNameSpaceNam ...
- sh7.创建yum源脚本练习
练习1, 写一个脚本分别计算1-100,之间奇数和偶数之和 ji_sum.sh #!/bin/bash # let ..};do ] -eq ];then let sum+=I fi done ech ...
- MATLAB求解代数方程、微分方程的一些常用指令
MATLAB版本:R2015b 1.求解符号矩阵的行列式.逆.特征值.特征向量 A = sym('[a11, a12; a21, a22]');deltaA = det(A)invA = inv(A) ...