python+webdriver 模拟用户交互工具

概述:

 

步骤:

安装webdriver:

Windows:

  pc:chrome(有头浏览器,除用命令控制浏览器外其余与浏览器相同,个人用chrome)

    phantomjs(无头浏览器,后台操作,不弹出浏览器)

    安装方法:下载好对应的zip文件,提取其中的chromedriver.exe/phantomjs.exe放于自行创建的文件夹中即可(实例放置于D盘新建Driver文件夹中)

Linux:

  (案例为使用树莓派安装phantomjs,并无chrome安装方法,个人一般使用爬虫在树莓派或者vps工作会在pc调试好再进行上传,也就没必要安装chrome。。。好吧,我承认我懒只找到安装phantomjs的方法)详见:"Installing PhantomJS on the Raspberry Pi"

首先,退至主目录,通过git获得phantomjs-raspberry.git

cd ~

若未安装git或不确定可使用

sudo pip install git

获取phantomjs-raspberry.git(需要等待几分钟进行下载,应该因为家里网垃圾等了小二十分钟吧我。。/摊手)

git clone https://github.com/piksel/phantomjs-raspberrypi.git

给下载好的文件中bin目录下phantomjs文件加入权限

chmod -x ~/phantomjs-raspberrypi/bin/phantomjs
chmod 775 ~/phantomjs-raspberrypi/bin/phantomjs

通过ln -s进行软连接

sudo ln -s /home/pi/phantomjs-raspberrypi/bin/phantomjs /usr/bin/

至此,phantomjs应该已经安装成功,可输入

phantomjs -v 

查询phantomjs的版本号,若存在版本号即为安装成功

安装selenium库:

  于命令行输入:

pip install selenium

代码使用:

# 导入selenium库
from selenium import webdriver


# 确认模拟浏览器位置
chromePath = r'D:\Driver\chromedriver.exe'  # chrome模拟浏览器

phantomjsPath = r'D:\Driver\phantomjs.exe'  # phantomjs浏览器


# 指明浏览器路径和浏览器类型
wd = webdriver.Chrome(executable_path= chromePath)  # Chrome浏览器
wd = webdriver.PhantomJS(executable_path = phantomjsPath)  # Phantomjs浏览器


# 打开网页
wd.get(url)


# 获取网页对应标签的文本信息
wd.find_element_by_xpath('文本Xpath位置').text


# 网页填写框进行填写
wd.find_element_by_xpath('填写框Xpath位置').send_keys('填写内容')


# 若有标签'display'="none"导致标签未显示,可更改display值为'block'
# 引自'http://www.cnblogs.com/fnng/p/5365900.html'
# 示例为WKJ出生日期选项,"li"为标签名,[18]为第18位"li"标签
js = 'document.querySelectorAll("li")[18].style.display="block";'  
wd.execute_script(js)


# 网页按钮点击
wd.find_element_by_xpath('按钮Xpath位置').click()  # 若为按钮
wd.find_element_by_xpath('按钮Xpath位置').submit()  # 若为表单

  

大致使用方法就是这些,新人第一次发微博,大家见谅。。。。。。。。

ps: 保存cookie文件实行免登陆操作参见:python+webdriver 网页自动登录

posted @ 2018-02-02 14:37  MO_OF  阅读(1674)  评论(0编辑  收藏  举报