
爬虫笔记
爬虫笔记
sweetheart7-7
学习笔记
展开
-
爬虫 小 tip
先用如下两种方法判断需要爬取的资源是否在返回的 html 中一.1)2)二copy 两个 xpath 路径 找规律三得出一个 统一的 xpath四编写代码提取数据注:此处用了 flask 框架将爬到的结果可视化展示,爬虫部分包含在其中此处用微博热搜做例子# 导入库from lxml import etreeimport requestsfrom flask import Flaskapp = Flask(__name__)@app.route("/")d原创 2021-12-10 16:00:14 · 627 阅读 · 0 评论 -
pymongo模块的使用
#-*-coding:utf-8-*-from pymongo import MongoClientclass TestMongo: def __init__(self): client = MongoClient(host="127.0.0.1",port=27017) self.collection = client["test"]["t1"] # 使用方括号的方式选择数据库和集合 def test_insert(self):原创 2020-09-30 21:34:02 · 257 阅读 · 0 评论 -
mongodb数据库基础
mogodb:查看帮助:mongod –help启动:sudo service mongod start停止:sudo service mongod stop重启:sudo service mongod restart查看是否启动成功:ps ajx|grep mongod配置文件的位置:/etc/mongod.conf默认端⼝:27017日志的位置:/var/log/mongodb/mongod.log启动本地客户端:mongo查看帮助:mongo –help退出:exit或者ctr原创 2020-09-30 17:05:37 · 373 阅读 · 0 评论 -
利用selenium实现自动翻页爬取某鱼数据
基本思路:首先用开发者工具找到需要提取数据的标签列表:利用xpath定位所有列表然后再逐个提取相应的数据:保存数据到csv:利用开发者工具找到下一页按钮所在标签:利用xpath提取此标签对象并返回:调用点击事件,并循环上述过程:最终效果图:代码:from selenium import webdriverimport timeimport reclass Douyu(object): def __init__(self): # 开始时的u原创 2020-09-27 20:59:40 · 1270 阅读 · 3 评论 -
selenium的安装与使用
Selenium:Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,可以按指定的命令自动操作,Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器.Selenium 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生.Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用,如Chrome浏览器.安装:需要百度下chromedriver版本和支持的Chrome版本原创 2020-09-27 16:44:08 · 497 阅读 · 0 评论 -
json模块的简单使用
数据提取之JSON:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写.同时也方便了机器进行解析和生成.适用于进行数据交互的场景,比如网站前台与后台之间的数据交互.Python 3中自带了JSON模块,直接import json就可以使用了.官方文档:http://docs.python.org/library/json.htmlJson在线解析网站:http://www.json.cn/#JSON:json原创 2020-09-27 14:32:32 · 402 阅读 · 0 评论 -
爬取某站并在提取数据后保存成格式化文件(csv)
from lxml import etreeimport requestsimport reclass QiuShiBai(object): def __init__(self): self.start_save = True # 请求头 self.headers = {"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) C原创 2020-09-26 14:59:47 · 767 阅读 · 0 评论 -
爬虫常见套路
xpath的包含//div[contains(@class,‘i’)]实现爬虫的套路准备url准备start_urlurl地址规律不明显,总数不确定通过代码提取下一页的urlxpath寻找url地址,部分参数在当前的响应中(比如,当前页码数和总的页码数在当前的响应中)准备url_list页码总数明确url地址规律明显发送请求,获取响应添加随机的User-Agent,反反爬虫添加随机的代理ip,反反爬虫在对方判断出我们是爬虫之后,应该添加更多的原创 2020-09-26 11:55:11 · 291 阅读 · 0 评论 -
Xpath与lxml类库
什么是XMLXML 指可扩展标记语言(EXtensible Markup Language)XML 是一种标记语言,很类似 HTMLXML 的设计宗旨是传输数据,而非显示数据XML 的标签需要我们自行定义。XML 被设计为具有自我描述性。XML 是 W3C 的推荐标准XML 和 HTML 的区别数据格式 描述 设计目标XML Extensible Markup Language (可扩原创 2020-09-26 10:44:11 · 219 阅读 · 0 评论 -
re(正则表达式)模块
正则表达式匹配规则:正则表达式在线测试网站Python 的 re 模块:在 Python 中,我们可以使用内置的 re 模块来使用正则表达式.有一点需要特别注意的是,正则表达式使用 对特殊字符进行转义,所以如果我们要使用原始字符串,只需加一个 r 前缀,示例:r'chuanzhiboke\t\.\tpython're 模块的一般使用步骤如下:使用 compile() 函数将正则表达式的字符串形式编译为一个 Pattern 对象通过 Pattern 对象提供的一系列方法对文本进行匹配查原创 2020-09-25 23:04:43 · 325 阅读 · 0 评论 -
利用Chrome浏览器抓包
chrome浏览器的使用:开发者工具模式下: ctrl + shift + f 全局搜索url中的关键字Network下抓包勾选Preserve log可以抓跳转而丢失的包.点击某一个url,response下显示的响应数据,preview可以格式化显示响应的json数据.Source存放请求的所有资源.在Source下如果代码是一行可以勾选左下角的"{}"格式化显示不懂的代码可以在console下运行寻找js发送post请求的url地址:在form表单中寻找action对应的url原创 2020-09-25 22:48:04 · 3818 阅读 · 2 评论 -
Requets模块的使用(爬取简单网页和图片)
Requests 使用入门:requests的底层实现就是urllib.requests在python2 和python3中通用,方法完全一样.requests简单易用.Requests能够自动帮助我们解压(gzip压缩的等)网页内容.Requests 继承了urllib的所有特性.Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码.-----------------------原创 2020-09-25 14:00:18 · 692 阅读 · 0 评论 -
认识爬虫
爬虫的定义:网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟客户端发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序.只要是浏览器能做的事情,原则上,爬虫都能够做爬虫的分类:通用爬虫 :通常指搜索引擎的爬虫聚焦爬虫 :针对特定网站的爬虫ROBOTS协议:Robots协议:网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取.例如:https://www.taobao.com/robots.txtHTTP和HTTPS:HTTP 超文原创 2020-09-25 13:56:28 · 195 阅读 · 0 评论