随笔分类 -  爬虫日记

摘要:Scrapy框架 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速、简单、可扩展的方 式从网站中提取所需的数据。但目前Scrapy的用途十分广泛,可用于如数据挖掘、监测和自动化测试等领域,也可以应用在获取API 所返回的数据(例如 阅读全文
posted @ 2020-01-07 08:27 chanyuli 阅读(331) 评论(0) 推荐(0)
摘要:MongoDB MongoDB是一款强大、灵活、且易于扩展的通用型数据库。 1、易用性 2、易扩展性 3、丰富的功能 4、卓越的性能 MongoDB基础知识 .jpg) 从上面的图中可以看出,集合就相当于关系型数据库的表,文档就是记录等等 集合就是一组文档。如果将MongoDB中的一个文档比喻为关系 阅读全文
posted @ 2020-01-03 19:45 chanyuli 阅读(289) 评论(0) 推荐(0)
摘要:```python import requests from bs4 import BeautifulSoup import re from mysql_control import MySQL # 爬虫三部曲 # 1.发送请求 def get_html(url): response = requests.get(url) return response # 2.解析数据 def parse_da 阅读全文
posted @ 2020-01-02 19:10 chanyuli 阅读(168) 评论(0) 推荐(0)
摘要:```python import requests import re import uuid from concurrent.futures import ThreadPoolExecutor pool = ThreadPoolExecutor(50) # 爬虫三部曲 # 1.发送请求 def get_html(url): print(f'start: {url}...') response = 阅读全文
posted @ 2020-01-02 19:09 chanyuli 阅读(211) 评论(0) 推荐(0)
摘要:```python import requests import re headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36' } # 爬虫三部曲 # 1.发送请求 def get 阅读全文
posted @ 2020-01-02 19:06 chanyuli 阅读(263) 评论(2) 推荐(0)
摘要:reques补充 Response的属性 bs4五种过滤器 阅读全文
posted @ 2020-01-02 19:05 chanyuli 阅读(233) 评论(0) 推荐(0)
摘要:模拟登录是一件比较简单的事情,但是如果目标网站做了一些反爬措施,那么这个过程就不那么简单了。 如何模拟登陆github 在写爬虫代码之前一定要先分析http的请求流程,并且要成功登陆,观察需要带一些什么参数。 发现有两个我们没有自带的参数,一个是authenticity_token,另一个是time 阅读全文
posted @ 2019-12-31 19:16 chanyuli 阅读(701) 评论(0) 推荐(1)
摘要:代理 当我们美好的爬完一个页面之后,喝了一杯茶,决定再爬一次,提升成就感,这时候发现了居然爬不了了! 这是为什么? 因为有些网页他会做了一些反爬措施,你的ip爬取在单位时间内访问了过多次数。所以他就不让你爬了。这种情况我们就可以称之为,你的ip被他的服务器端给封掉了。 那么我们是不是可以通过某种手段 阅读全文
posted @ 2019-09-22 17:30 chanyuli 阅读(219) 评论(0) 推荐(0)
摘要:模拟登录cookie操作 我们之前已经实现了模拟人人网登录,那么我们接下来是不是可以直接用requests模块获取登录成功的界面的内容? 于是我们就那这个url做了请求。 结果访问到的html依然是登录界面。 这就是http/https协议的特性:无状态 没有请求到对应页面数据的原因: ​ 发起的第 阅读全文
posted @ 2019-09-22 17:29 chanyuli 阅读(429) 评论(0) 推荐(0)
摘要:模拟登陆 既然我们做到了识别验证码,那么我们就可以开始模拟登录了。 然后你就模拟登录上了。 阅读全文
posted @ 2019-09-22 17:27 chanyuli 阅读(209) 评论(0) 推荐(0)
摘要:识别验证码 这个例子,是我们用python代码通过采用第三方来进行识别验证码。 我们用的是云打码这个网站。先在这个网站上把该注册的该申请的东西全都弄好。 然后把他的PythonHTTP调用示例下载来。 代码就在里面,具体怎么实现的我们就不用去理解了,要是能理解了,那可得多屌。 接下来我们只用去我们想 阅读全文
posted @ 2019-09-17 21:45 chanyuli 阅读(299) 评论(0) 推荐(0)
摘要:xpath解析 xpath解析是最常用且最便捷高效的一种解析方式,通用性最强。 xpath解析原理: 1. 实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中。 2. 调用etree对象中的xpath方法接个着xpath表达式实现标签的定位和内容的捕获。 —如何实例化一个etre 阅读全文
posted @ 2019-09-15 21:26 chanyuli 阅读(184) 评论(0) 推荐(0)
摘要:有些时候我们用requests url的形式就能直接获取到那个页面里头所有的数据,但有些时候我们明明看的到这个页面里的内容,但是通过url却获取不到,这是因为有些内容是通过动态获取的,可能是ajax,也有可能是其他动态加载。 阅读全文
posted @ 2019-09-14 12:20 chanyuli 阅读(194) 评论(0) 推荐(0)
摘要:断了一段时间的爬虫自学又开始了 阅读全文
posted @ 2019-09-14 12:18 chanyuli 阅读(160) 评论(0) 推荐(0)
摘要:爬虫日记 正则表达式 .jpg) .jpg) .jpg) .jpg) .jpg) .jpg) 阅读全文
posted @ 2019-08-26 22:48 chanyuli 阅读(151) 评论(0) 推荐(1)
摘要:正则表达式接下来要学。 阅读全文
posted @ 2019-08-25 15:28 chanyuli 阅读(131) 评论(0) 推荐(0)
摘要:实例爬取 排名 学校名称 总分 1 清华大学 94.6 2 北京大学 76.5 3 浙江大学 72.9 4 上海交通大学 72.1 5 复旦大学 65.6 6 中国科学技术大学 60.9 7 华中科技大学 58.9 7 南京大学 58.9 9 中山大学 58.2 10 哈尔滨工业大学 56.7 11 阅读全文
posted @ 2019-08-25 15:26 chanyuli 阅读(171) 评论(0) 推荐(1)
摘要:一张图就差不多得了,要看自己回去看 阅读全文
posted @ 2019-08-24 09:41 chanyuli 阅读(119) 评论(0) 推荐(0)
摘要:基于bs4库的HTML格式化和编码 我们之前在讲美味汤的时候,就已经用过一次prettify方法了,那时候没有做讲解,因为我自己都没发现,我不知道那是干什么的,只知道用了那个方法之后,爬取到的html本来是一团的,变成了长长的一条了,看上去清晰了很多。 至于编码,prettify的编码格式是utf8 阅读全文
posted @ 2019-08-24 09:33 chanyuli 阅读(388) 评论(0) 推荐(0)
摘要:基于bs4库的HTML遍历方法 .jpg) 标签树的下行遍历 .jpg) 来手打栗子,依然是用上一节的demo .jpg) contents打印出了所有子标签,存在列表里展示 也可以通过索引取值。 标签树的上行遍历 .jpg) .jpg) html已经是html的最高级标签了,没有父标签,所以他的父 阅读全文
posted @ 2019-08-23 22:48 chanyuli 阅读(443) 评论(0) 推荐(1)