保密性好的网站,不能使用request请求页面信息,这样可以使用webdriver模块先开启一个浏览器,然后爬去信息,甚至还可以click等操作对页面操作,再爬取。

  demo 一般流程:

  1)包含selenium 模块

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

  2)设置采用火狐浏览器(chrome也可以)

driver = webdriver.Firefox()

  3)get方式打开(为了保密,url省略)

driver.get("http://www.---------------")

  4)css方式筛选

elements = driver.find_elements_by_css_selector("span.c9.ng-binding")

  5)由于webdriver模块的筛选功能不是很好用,这里推荐转成html形式,然后使用beautifulsoap筛选

html = driver.page_source

  6)BeautifulSoup筛选信息-find_all  和 css 选择器方式更好用

from bs4 import BeautifulSoup
import re soup = BeautifulSoup(html)
# soup.find_all('div',text=re.compile(u"信息"))[]
for i in soup.select('a[href*="human"]'):
print i

最新文章

  1. Android开发——搭建最新版本的Android开发环境
  2. 线程的Abort方法有感
  3. Unix时间戳与C# DateTime时间类型互换
  4. Effective Java 51 Beware the performance of string concatenation
  5. Java判断文件编码格式
  6. 动画--过渡属性 transition-property
  7. C# string格式的日期时间字符串转为DateTime类型
  8. 第一节:Maven 下载,安装和配置
  9. js 获取时间对象代码
  10. 关于智能指针auto_ptr
  11. mysql超时机制
  12. ANNOTATION 注解
  13. RN picker使用
  14. sqlite3 插入数据的时候,返回SQLITE_CONSTRAINT
  15. vim配置之目录结构
  16. 【OCP 12c】最新CUUG OCP-071考试题库(62题)
  17. 用Vue的父子组件通信实现todolist的功能
  18. 用VIM查看编辑二进制文件
  19. Stack vs Heap
  20. vsftpd 虚拟用户配置

热门文章

  1. LOVE POWER html与javaScript
  2. MySQL单标查询
  3. JavaScript之深入对象(二)
  4. 目标检测中常提到的IoU和mAP究竟是什么?
  5. elasticsearch深度分页问题
  6. Emacs 笔记二
  7. 【Python笔记】Python变量类型
  8. Linux 常用解压和压缩命令
  9. Flask基础(16)-->WTForms表单创建和简单验证
  10. 体验StartOS