Python公开课 - 爬虫识别图像验证码

前言 目前,对于爬虫的反爬技术也很多,除了封禁IP以外验证码技术也是一个有效的方式来确保是人而不是程序在访问网站,并且随着技术的发展, 验证码的花样越来越多。 字符验证码 字符验证码是比较普遍的方式,一般是四位字母或者数字组成,在中小网站中非常常见。 例如在Django项目中,引入d...

Python公开课 - 爬虫识别滑动验证码

前言 做爬虫碰到验证码是家常便饭,现在Geetest作为作为一个专业的验证码服务提供商,为不少网站提供了用户行为的验证服务。 其中常见的就是滑动验证,也就是说用户必须手动将滑块拉到对应的图片缺口上。 作为爬虫开发者碰到这类验证码,该如何处理呢,本篇将介绍的一种,通过Selenium模拟用...

Python公开课 - 页面解析之pyquery

前言 pyquery是一个非常强大又灵活的网页解析库,如果你觉得BeautifulSoup语法太难记,如果你熟悉jQuery的语法,那么pyquery就是不错的选择。它允许您对xml文档进行jquery查询,API与与jquery类似,使用lxml进行快速xml和html操作。 安装 ...

Python公开课 - 数据抓取之Selenium使用(上)

1. 前言 在上一章中,我们阐述了如何抓取Ajax页面的内容,但是实际情况动态网页的产生不单单只有Ajax这一种方式。 网页通过Javascript编写展现逻辑代码,也是实现页面动态展示的非常普遍的方式。如果这段代码中涉及到计算、加密等,会让你很难逆向解析。 这时候可以考虑Seleniu...

Python公开课 - pyspider框架介绍

1. 前言 写网络爬虫程序,除了自己开发以外,也可以选择一些成熟好用的框架,当你熟悉好框架后,开发起来事半功倍,效率很高。今天要介绍的就是一个python下的pyspider框架。 2. pyspider基本介绍 pyspider是国人编写的强大的网络爬虫系统。采用Python语言编写,...

Python公开课 - pyspider基本使用

1. 前言 在上一章中我们对pyspider的架构和设计方法进行了介绍,接下来我们来看看如何使用 2. 安装pyspider pyspider目前是GitHub上的开源项目,地址为:https://github.com/binux/pyspider 我们可以通过pip来进行安装 su...

Python公开课 - 数据抓取之Selenium使用(下)

前言 Selenium Python提供非常方便的API和浏览器进行交互,目前支持Python2.7和Python3版。 本章将从爬虫的视角来介绍Selenium的具体使用。 Selenium访问今日头条的简单使用 我们以今日头条的Web站点为例: from selenium i...

Python公开课 - 页面解析之Beautiful Soup

前言 Beautiful Soup提供一些简单的、Python式的函数来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。 同时可以自动将输入文档转换为Unicode编码,输出文档转换为UT...

Python公开课 - 页面解析之XPath

前言 XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。 XPath最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索。所以在做爬虫时,可以使用...

Python公开课 - Requests高级功能

前言 在上一章节我们对requests库的基本功能进行了介绍,当然request在处理会话,https等方面也非常方便。 文件上传 我们知道 requests 可以模拟提交一些数据。 假如有的网站需要上传文件,我们也可以用它来实现, 这非常简单,示例如下: import request...