python下初步使用selenium/phantomJS问题总结
2017-01-01 21:27
204 查看
想做个网页爬虫工具,由于网页的JS脚本解析比较麻烦,试用了selenium+phantomJS的方式,方便很多,总结下使用过程中遇到的几个问题;
selenium可以调用浏览器工具进行网页的访问,而phantomJS可以看做一个没有界面的、后台运行的浏览器,而且可以解析JS脚本;
1、基本使用方式
from selenium import webdriver
driver = webdriver.PhantomJS(executable_path='...')
driver.set_page_load_timeout(10)
driver.get(url)
#获取网页元素的方式
driver.find_element_by_id('...')
driver.find_element_by_csss_selector('...')
driver.find_element_by_tag_name('...')
driver.find_elements_by_xpath('...')
driver.quit()
2、executable_patch设置的问题
--需要设置phantomJS执行文件的问题,路径中需要使用/,而使用\方式时出错;
3、使用driver.get(url)概率一直不返回的问题
--应该是默认加载网页超时设置为无限值导致;
--driver.set_page_load_timeout(10),即将加载网页超时设置为10s;
4、不能使用print打印中文的问题
--由于使用Notepad编写脚本时,默认使用的是ANSI格式编码;
--将编码方式修改为UTF-8编码方式解决;
5、关于对齐问题
由于python的代码块是靠空格对齐来划分的,如果不对齐将出现结果问题;
在使用notepad++编辑,可以设置:
--菜单栏->视图 -> 显示符号 -> 显示空格与制表符,这样可以看到空格符的显示信息;
--菜单栏->设置- > 首选项- > 语言- > Replace by space,并且可以设置Tab size的大小;
6、网页table的访问
--访问网页的table中某项时,网上很多都使用by xpath的方式,觉得比较麻烦;
--后来发现只要采用by id的方式就能够取到整个table的信息,然后再采用re模块的方法进行处理即可。
想做个网页爬虫工具,由于网页的JS脚本解析比较麻烦,试用了selenium+phantomJS的方式,方便很多,总结下使用过程中遇到的几个问题;
selenium可以调用浏览器工具进行网页的访问,而phantomJS可以看做一个没有界面的、后台运行的浏览器,而且可以解析JS脚本;
1、基本使用方式
from selenium import webdriver
driver = webdriver.PhantomJS(executable_path='...')
driver.set_page_load_timeout(10)
driver.get(url)
#获取网页元素的方式
driver.find_element_by_id('...')
driver.find_element_by_csss_selector('...')
driver.find_element_by_tag_name('...')
driver.find_elements_by_xpath('...')
driver.quit()
2、executable_patch设置的问题
--需要设置phantomJS执行文件的问题,路径中需要使用/,而使用\方式时出错;
3、使用driver.get(url)概率一直不返回的问题
--应该是默认加载网页超时设置为无限值导致;
--driver.set_page_load_timeout(10),即将加载网页超时设置为10s;
4、不能使用print打印中文的问题
--由于使用Notepad编写脚本时,默认使用的是ANSI格式编码;
--将编码方式修改为UTF-8编码方式解决;
5、关于对齐问题
由于python的代码块是靠空格对齐来划分的,如果不对齐将出现结果问题;
在使用notepad++编辑,可以设置:
--菜单栏->视图 -> 显示符号 -> 显示空格与制表符,这样可以看到空格符的显示信息;
--菜单栏->设置- > 首选项- > 语言- > Replace by space,并且可以设置Tab size的大小;
6、网页table的访问
--访问网页的table中某项时,网上很多都使用by xpath的方式,觉得比较麻烦;
--后来发现只要采用by id的方式就能够取到整个table的信息,然后再采用re模块的方法进行处理即可。
相关文章推荐
- Windows环境下使用python selenium 打开Firefox的问题总结
- python最近使用问题总结
- python 结合 selenium 使用iedriver报错问题处理
- python爬虫,selenium使用,Firefox-chrome-IE问题解决方法,selenium的基本操作
- 如何在Python-Selenium中使用PhantomJS加载cookies
- python 使用过程问题总结
- Fixing “selenium.common.exceptions.WebDriverException: Message: ‘Can\’t load the profile.” 分类: 问题总结 python下载 ubuntu python基础学习 2014-01-20 15:28
- 使用Python+Selenium过程中中常见的问题汇总
- Python学习总结笔记(5)--进程/线程Event机制使用时要注意的一个问题
- Python使用Selenium和PhantomJS解析动态JS的网页
- python爬虫积累(一)--------selenium+python+PhantomJS的使用
- Python使用Selenium/PhantomJS
- (selenium 小知识点)解决使用Webdrive打开Firefox不含有插件的问题(python)
- selenium 学习笔记 ---新手学习记录(4) 问题总结(java)-autoit3脚本使用
- 用python做自动化测试--web 自动化测试(1)-Selenium 3.x使用系列问题集
- Django在使用mod_python+apache中配置VirtualHost的问题总结
- Python-Selenium2做Web自动化测试(6)-解决使用Webdrive打开Firefox不含有插件的问题
- Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
- lldb调试使用python脚本问题总结
- [Python 爬虫之路4] 使用selenium爬取知乎任意一个问题下,所有回答中的图片