爬虫
-
python | 爬虫笔记 – 学习路线
总体学习路径: 1、学习 Python 包并实现基本的爬虫过程 2、了解非结构化数据的存储 3、学习scrapy,搭建工程化爬虫 4、学习数据库知识,应对大规模数据存储与提取 5、掌握各种技巧,应对特殊网站的反爬措施 6、分布式爬虫,实现大规模并发采集,提升效率 · 目标驱动 · 在一开始的时候,尽量不要系统地去啃一些东西,找一个实际的项目(开始可以从豆…
-
python | 爬虫笔记(四)- 解析库使用
本节内容为解析库的使用,内容涵盖:XPath、BeautifulSoup和PyQuery基础内容。 · 正则表达来提取比较繁琐。 · 对于网页的节点来说,它可以定义 id、class 或其他的属性,而且节点之间还具有层次关系,在网页中可以通过 XPath 或 CSS 选择器来定位一个或多个节点,进而提取相关内容或属性。 · 解析库包括:LXML、Beaut…
-
python | 爬虫笔记(三)- 基本库使用
本节内容为基础库的使用,内容涵盖:Urllib库基本使用,Requests库基本使用以及正则表达式基础。 3.1 Urllib 内置http请求库 request请求模块,error异常处理模块,parse工具模块,robotparser 识别网站robots.txt,识别哪些可以爬 3.1.1 发送请求 1- urlopen urllib.request …
-
python | 爬虫笔记(二)- 爬虫基础
2.1 HTTP原理 1、URI、URL 统一资源标识符,统一资源定位符 协议+路径+资源名称 URL 是 URI 的子集,URI 还包括一个子类叫做 URN,它的全称为 Universal Resource Name,即统一资源名称。 URN 只命名资源而不指定如何定位资源,如 urn:isbn:0451450523,它指定了一本书的 ISBN,可以唯一标…
-
python | 爬虫笔记(七)- 动态渲染页面抓取Selenium
JavaScript 动态渲染的页面不止 Ajax 这一种 另外有的ajax渲染接口含有很多加密参数,难以直接找出其规律 通过模拟浏览器运行的方式来实现,Selenium、Splash、PyV8、Ghost 等 7.1 Selenium的使用 自动化测试工具,支持多种浏览器。爬虫中主要用来解决js渲染问题 用 Selenium 来驱动浏览器加载网页的话,可以…
-
python | 爬虫笔记(六)- Ajax数据爬取
request得到和浏览器数据不同 数据加载是异步加载方式,原始页面不包含数据,加载完后会会再向服务器请求某个接口获取数据,然后数据再被处理才呈现到网页上,这其实就是发送了一个 Ajax 请求。这样Web 开发上可以做到前后端分离,而且降低服务器直接渲染页面带来的压力。 因此遇到这种情况,用requests模拟ajax请求 6.1 Ajax 1- 介绍 A…
-
34.scrapy解决爬虫翻页问题
这里主要解决的问题:1.翻页需要找到页面中加载的两个参数。 ‘__VIEWSTATE’: ‘{}’.format(response.meta[‘data’][‘__VIEWSTATE’]), ‘__EVENTVALIDATION’: ‘{}’.format(response.meta[‘data’][‘__EVENTVALIDATION’]),还有一点需要注…
-
python小实例一:简单爬虫
本文所谓的爬虫就是通过本地远程访问url,然后将url的读成源代码形式,然后对源代码进行解析,获取自己需要的数据,相当于简单数据挖掘。本文实现的是将一个网页的图片爬出保存到本地的过程,例子很简单,用的是python 3.5.2版本,以前的版本可能导入的包的名字不一样,调用的库函数方式有些差别。代码如下: #coding =utf-8 import urlli…
-
想开发网页爬虫,发现被反爬了?想对 App 抓包,发现数据被加密了?不要担心,这里可以为你解决。
全面超越Appium,使用Airtest超快速开发App爬虫 想开发网页爬虫,发现被反爬了?想对 App 抓包,发现数据被加密了?不要担心,使用 Airtest 开发 App 爬虫,只要人眼能看到,你就能抓到,最快只需要2分钟,兼容 Unity3D、Cocos2dx-*、Android 原生 App、iOS App、Windows Mobile……。 Air…
-
完整爬虫步骤(进阶)
import randomimport requestsfrom fake_useragent import UserAgentfrom retrying import retryimport hashlib #信息摘要 md5import queue #队列import re #正则表达式from urllib import robotparser #解析…