
爬虫技术
润年
穷则变,变则通
展开
-
scrapy post发送请求是报400响应码的问题
先说解决方法:去掉你请求头中的 Content-Length在scrapy的过程中发送请求的时候,你会发现特别是post请求很多时候会报400的错误,明明同样的请求在requests中能请求成功,你尝试了scrapy.Request, scrapy.http.Request, scrapy.FormRequest都还是报这个错误,于是开始怀疑scrapy是不是有问题。是的,scrapy是有问题的,因为它在背后默默做了一些操作,不像requests那么简洁,很多时候post请求都是因为你的请...原创 2021-01-18 11:45:59 · 1261 阅读 · 0 评论 -
python从零开始到scrapy框架应用(youtube示例)
python是目前开发爬虫最好的语言,本次爬取youtube视频所需用到: python环境,scrapy框架,pycharm编译器,mongo数据库步骤:1.windows python环境搭建和安装: 进入python官网https://www.python.org/进行下载python3.7,进行安装并配置环境变量2.安装python编译器pycharm 进入pycharm官网https://www.jetbrains.com 下载pycharm社区版本并安装3.安装m...原创 2020-08-27 10:36:58 · 1132 阅读 · 3 评论 -
新版知乎反爬虫js逆向过程
大约是在2020年3月底左右,知乎的反爬虫开始升级,再也不能放个UA就肆无忌惮的爬取了,此次的爬虫升级主要是在请求头中增加了一些加密参数,如图,其中必不可少的参数是x-zse-86,x-ab-param参数可以不要,x-zse-81参数是因为滑动翻页才会出现,不过有种方式可以让它不出现也可以翻页。破解x-zse-86的过程记录如下:1.全局搜索,定位加密参数所在位置2.找到参数,打断点初始化driver对象后,设置一下两个超时时间driver.set_page_load_timeout(10) #页面加载超时时间driver.se...原创 2020-04-17 17:09:56 · 6931 阅读 · 2 评论 -
python+fiddler获取微信文章的阅读数和点赞数
具体详细信息见:https://blog.youkuaiyun.com/qq_41686130/article/details/88296981?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task我提炼了获取文章连接后提取阅读数、点赞数和评论数的部分代码如...转载 2020-03-27 17:22:53 · 1600 阅读 · 0 评论 -
python requests中的post请求的参数问题
问题:最新在爬取某站点的时候,发现在post请求当中,参数构造正确却获取不到数据,索性将post的参数urlencode之后放到post请求的url后面变成get请求,结果成功获取到数据,对此展开疑问。1.http请求中Form Data和Request Playload的区别: Ajax post请求中常用的两种参数形式:form data 和 request payload g...原创 2020-01-20 20:34:27 · 33308 阅读 · 5 评论 -
python:requests的超时timeout
官方的解释: param timeout: (optional) How long to wait for the server to send data before giving up, as a float, or a :ref:`(connect timeout, read timeout) <timeouts>` tuple.服务器返回数据前等待的最长时间,可以是...原创 2020-01-02 19:49:30 · 1720 阅读 · 0 评论 -
一些常见的问题及其解决办法连接(亲测可用)
Windows系统下基于Scrapyd部署爬虫项目(本地部署)https://blog.youkuaiyun.com/baoshuowl/article/details/79656701Ubuntu中Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend)问题的解决https://blog.youkuaiyun.com/sh...转载 2019-10-10 17:02:59 · 232 阅读 · 0 评论 -
python调取google翻译接口翻译
# -*- coding:utf-8 -*import execjsfrom urllib.request import quoteimport requestsimport pymysqlclass Py4Js():"""获取加密参数tk""" def __init__(self): self.ctx = execjs.compile(""" ...原创 2019-07-26 12:16:40 · 650 阅读 · 0 评论 -
单线程爬淘宝商品信息
import requestsimport reimport jsonimport randomimport timefrom lxml import etreeimport osfrom agency import PROXIES, USER_AGENTSdef get_page(url): headers ={ "User-Agent": random...原创 2018-10-07 16:17:21 · 312 阅读 · 0 评论 -
scrapy根据关键字爬取google图片
浏览器的图片都是通过Ajax异步加载的,通过浏览器F12的network下的XHR可以看到,当往下拉动加载更多图片时,XHR会加载出许多内容,可以判定我们所需的数据可以通过这个接口拿到。下面是代码;spiders文件# -*- coding: utf-8 -*-import scrapyfrom urllib.parse import urlencodeimport refro...原创 2018-10-07 16:42:26 · 1235 阅读 · 0 评论 -
scrapy项目中settings参数的使用详解
代码开发的时候,总是提倡一些参数写在配置文件中,这对于未来的代码管理、维护、测试、部署都有很大的益处。scrapy作为一个强大爬虫的框架,其settings的应用机制也十分健壮,在这我总结了一些平时在爬虫项目中配置参数的使用技巧。settings的优先级官方文档中scrapy中settings参数有四个级别:命令行选项(Command line Options)(最高优先级)...原创 2018-12-19 14:45:18 · 7395 阅读 · 1 评论 -
setting参数详解
Scrapy内置设置下面给出scrapy提供的常用内置设置列表,你可以在settings.py文件里面修改这些设置,以应用或者禁用这些设置项。BOT_NAME 默认: 'scrapybot' Scrapy项目实现的bot的名字。用来构造默认 User-Agent,同时也用来log。 当你使用 startproject 命令创建项目时其也被自动赋值。 CONCURRENT_ITEMS...原创 2018-12-19 17:51:30 · 1300 阅读 · 0 评论 -
手机User-Agent大全
因为爬取app需要,整理了一些手机的ua。如下:华为:Mozilla/5.0 (Linux; U; Android 8.1.0; zh-cn; BLA-AL00 Build/HUAWEIBLA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/8.9 Mobile...原创 2019-03-30 10:14:51 · 42198 阅读 · 5 评论 -
scrapy 错误集锦:
1.scrapy 爬网站 显示 Filtered offsite request to 错误.爬取京东商品时出现:DEBUG: Filtered offsite request to 'item.jd.com': <GET https://item.jd.com/39652897238.html>官方对这个的解释,是你要request的地址和allow_domain里面的冲突,...原创 2019-04-01 11:29:14 · 558 阅读 · 0 评论 -
cookie字符串转化为字典格式并在scrapy中设置cookies
在写scrapy时,发送请求中的cookie要求是字典格式。class transCookie: def __init__(self, cookie): self.cookie = cookie def stringToDict(self): ''' 将从浏览器上Copy来的cookie字符串转化为Scrapy能使用的Dict...原创 2019-05-18 10:22:00 · 1161 阅读 · 0 评论 -
抖音小视频爬取(配合mitmproxy和夜神模拟器)
# #_*_encoding:utf-8_*_import jsonimport sslfrom urllib.request import Requestimport urllibimport sysimport timeimport hashlibimport osfrom threading import Threadimport loggingfrom queue ...原创 2019-05-31 15:56:58 · 3250 阅读 · 2 评论 -
BloomFilter的基本概念和实现原理
一、基本概念: 布隆过滤器(Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的。它实际上是由一个很长的二进制向量(位向量)和一系列随机映射函数组成,布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率(假正例False positives,即Bloom Filter报告...转载 2019-07-02 14:41:47 · 13644 阅读 · 0 评论 -
scrapy爬取百度图片
百度图片基本没什么反爬虫措施,我们爬取图片时直接鼠标右键--->检查----->network---->XHR,往下拖动得到页面,可以看到headers下的General,查看实际的请求Request URL,提取其中的关键信息即可话不多说,直接上代码;spider文件:class BaidupictureSpider(scrapy.Spider): name ...原创 2018-09-21 11:54:05 · 1421 阅读 · 0 评论