网络爬虫随笔集
一般就是平时学习时做的比较
itLaity
不断努力,不断提升!
展开
-
某博体育登录-JS逆向
大家好我是J哥,今天给大家带来个逆向案例话不多说:aHR0cHM6Ly9jbi5mYXdteC5jb20vaG9tZS9yZWdpc3Rlcg==打开F12,账号密码随便输入就行1.分析包 1.追栈定点(从第一个开始往下找就行) 2.找寻加密位置找到这里的时候我们可以看到var enPassword = hex2b64(rsaKey.encrypt(pwd));-->下断点-->从新输入账号密码--->会定在这位置因为是RSA加密所以密码不...原创 2021-10-24 00:27:10 · 551 阅读 · 1 评论 -
某城在融登录-js逆向
大家好我是J哥,今天给大家带来个逆向的案例话不多说直接开干:aHR0cDovL3d3dy5jdHpybmV0LmNvbS91c2VyL3RvX2xvZ2lu打开F12,账号密码随便输入就行,但是验证码需要准确输入1.根据login包分析:publickey:我们观察包类型和initator的状况是不能够进行直接追栈抓包这种情况我们怎么解决呢?我们可以尝试先复制password在源码中搜索根据经验这就算是找到了-->encryptByDES(loginFor.原创 2021-10-11 15:32:23 · 149 阅读 · 0 评论 -
利用requests库获取cookies的方式
大家好我是J哥,最近爬取某站发现cookies隔段时间就会发生变化,所以在此给出了cookies变化的解决方案大多数人遇到这种情况可能会认为:这个得找cookies变化的规律, 通过请求与响应可以改变cookies, 通过js也可以改变cookies。要系统分析。其实不必这么复杂,方法很简单:def get_Cookies(): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) Appl原创 2021-08-19 23:17:56 · 7824 阅读 · 0 评论 -
python爬虫学习之分析ajax请求
Introducation本文先从分析网页开始,了解要干的目标是什么。chrome开发者工具F12打开chrome的开发者工具,我们关心的主要有这样几个列目:Elements: 允许我们从浏览器的角度看页面,也就是说我们可以看到chrome渲染页面所需要的的HTML、CSS和DOM(Document Object Model)对象。此外,还可以编辑这些内容更改页面显示效果;Network: 可以看到页面向服务器请求了哪些资源、资源的大小以及加载资源花费的时间,当然也能看到哪些资源不能成原创 2021-05-18 23:43:53 · 414 阅读 · 3 评论 -
python爬虫网页解析之parsel模块
一.parsel模块安装官网链接https://pypi.org/project/parsel/1.0.2/pip install parsel==1.0.2二.模块作用改模块主要用来将请求后的字符串格式解析成re,xpath,css进行内容的匹配推荐Python大牛在线分享技术 扣qun:855408893领域:web开发,爬虫,数据分析,数据挖掘,人工智能三.使用import requestsimport parselresponse = requests转载 2021-05-16 18:55:35 · 2496 阅读 · 0 评论 -
微信公众平台js算法逆向
大家好我是J哥,js逆向已经是爬虫工程师进阶必会的了,今天我来带领大家演练一下关于微信公众平台js算法逆向的学习,希望对大家有所帮助。原创 2021-06-07 01:46:18 · 634 阅读 · 10 评论 -
越过 自动化的检测 账号密码登录 不是扫码
大家好我是 J哥 相信很多朋友和我一样在selenium爬取一些网页的时候会被服务器识别出下面我就推荐大家一个方法只适合账号密码登录的,之前发表过自动化扫码登录和zh原创 2021-06-02 00:56:33 · 222 阅读 · 0 评论 -
【Scrapy从青铜到王者】第二篇:Scrapy进阶
--分布式爬虫: - 概念:我们需要分布式的机群(多台电脑完成),让其对同一组资源进行分布联合爬取 - 作用:提升爬取数据的效率高 - 如何实现分布式? - 安装一个 scrapy-redis的组件 - 原生的scrapy是不可以实现分布式爬虫,必须要让scrapy 结合着scrapy-redis组件一起实现分布式爬虫:调度器共享 - 为什么scrapy不可以实现分布式爬虫? - 1.调度器不可以被分布式机...原创 2021-05-26 16:27:23 · 962 阅读 · 1 评论 -
【Scrapy从青铜到王者】第一篇:Scrapy理解
什么是框架:就是一个集成了很多功能,并且具有很强的通用性的一个项目模板如何学习框架: 专门学习框架封装的各种功能的详细用法什么是scrapy :爬虫中封装好的一个明星框架。功能: 学习计划.高性能持久化存储,异步的数据下载,高性能的数据解析,分布式scrapy 框架的基本使用 :环境安装:-mac或者linux pip install scrapy -win pip install wheel...原创 2021-05-26 16:26:18 · 636 阅读 · 4 评论 -
scrapy爬取站长素材
scrapy爬取站长素材:1、创建项目scrapy startproject 爬虫项目名字2、创建虫子scrapy genspider 虫名字3、setting里面加UA伪装4、加LOG_LEVEL级别、ROBOTSTXT_OBEY = False5、虫名字里面爬取网站和解析数据6、item里面增加爬取的数据7、setting里面加管道配置8、pipelines管道自定义from scrapy.pipelines.images import ImagesPipeline、基原创 2021-05-23 08:56:06 · 622 阅读 · 3 评论 -
pymysql.err.OperationalError: (1054, “Unknown column ‘云南绿A生物工程有限公司福州分公司‘ in ‘field list‘“)解决办法
今天在练习往数据库导入数据时遇到了个问题:第一次遇到这样的问题,数据库的问题,百度了很多答案也找了很多博客文章看了问题是:pymysql.err.OperationalError: (1054, "Unknown column '云南绿A生物工程有限公司福州分公司' in 'field list'")问题截图如下:经过我不断的查找和尝试,最后终于解决了问题:答案:pymysql.err.OperationalError: (1054, "Unknown column '云南绿A.原创 2021-05-22 10:43:01 · 4709 阅读 · 11 评论 -
python 爬虫爬取内容时, \xa0 、\u00A0,\u0020, \u3000 的含义与处理方法
python 爬虫爬取内容时, \xa0 、 \u3000 的含义与处理方法HTML转义字符&npsp;表示non-breaking space,unicode编码为u'\xa0',超出gbk编码范围?如何处理:.extract_first().replace(u'\xa0', u' ').strip().encode('utf-8','replace') --->针对列表使用\xa0 是不间断空白符 str.replace(u’\xa0’, u’ ‘)\u3000 是全.原创 2021-05-22 10:05:01 · 3004 阅读 · 0 评论 -
通过bs4爬取三国演义
爬取三国演义:import requestsfrom bs4 import BeautifulSoup # 新的认知 只能解析首页url = 'https://www.shicimingju.com/book/sanguoyanyi.html'response = requests.get(url) # 获取字符串型的数据f = open('./sanguo.txt','w',encoding='utf-8')response.encoding = 'utf-8'response原创 2021-05-20 01:26:44 · 321 阅读 · 2 评论 -
python自动化爬取网易云歌词并制作词云图
图片需要用透明图片:这就体现你的搜索能力了import jieba # 中文分词库import wordcloud # 词云图库import imageio # 图像模块#读取图片file = open('contend.txt', mode='r', encoding='utf-8')txt = file.read()# print(txt)# 分词 把词语分开txt_list = jieba.lcut(txt)# 合并分词string = ' '.join(txt_l原创 2021-05-13 18:11:33 · 668 阅读 · 8 评论 -
python用自动化爬取网易云评论1
这个之前用requests尝试过很复杂不如用selenium自动化简单:其中有很多小细节import reimport webbrowserfrom selenium.webdriver import Chrome# from selenium.common.exceptions importimport jieba # 中文分词库import wordcloud # 制作词云图的库import imageio # 操作图像的库import time# 安装模块:# pi原创 2021-05-13 18:06:56 · 247 阅读 · 0 评论 -
python素描源代码
素描源代码from PIL import Imageimport numpy as npa = np.asarray(Image.open(r"图片的位置").convert('L')).astype('float')depth = 10. # (0-100)grad = np.gradient(a) # 取图像灰度的梯度值grad_x, grad_y = grad # 分别取横纵图像梯度值grad_x = grad_x * depth / 100.grad_y = grad_原创 2021-05-13 18:01:42 · 564 阅读 · 1 评论 -
脱离低级趣味- Python ‘\r‘, ‘\n‘, ‘\r\n‘ 的彻底理解
Python '\r', '\n', '\r\n' 的彻底理解 回车和换行的历史:机械打字机有回车和换行两个键作用分别是: 换行就是把滚筒卷一格,不改变水平位置。 (即移到下一行,但不是行首,而是和上一行水平位置一样) 回车就是把水平位置复位,不卷动滚筒。(即将光标移到行首,但是不会移到下一行,如果继续输入的话会覆盖掉前面的内容) Enter = 回车+换行(\r\n)理解:\n是换行,英文是New line \r是回车,英文是Carriage return...转载 2021-05-11 13:06:24 · 259 阅读 · 0 评论 -
爬虫登录总结
保存视频:with open("a.mp4",mode= "wb" ) as f: f.write(requests.get(srcurl).content)案例:# 1.拿到cont id# 2.拿到videoStatus 返回的json.--> srcURL# 3. srcURL 里面的内容进行修整# 4.进行下载视频# 防盗链 :Referer: https://www.pearvideo.com/video_1670880# 防盗链 : 溯源 ,当前本原创 2021-05-11 13:01:13 · 233 阅读 · 0 评论 -
超级鹰的使用
超级鹰使用代码:#!/usr/bin/env python# coding:utf-8import requestsfrom hashlib import md5class Chaojiying_Client(object): def __init__(self, username, password, soft_id): self.username = username password = password.encode('utf8')原创 2021-05-10 00:56:59 · 648 阅读 · 3 评论 -
12306的自动化登录
处理12306登录:from selenium.webdriver import Chromefrom chaojiying import Chaojiying_Clientfrom selenium.webdriver.common.action_chains import ActionChains # 事件链from selenium.webdriver.chrome.options import Optionsimport time#初始化 ????chaojiying = C原创 2021-05-10 00:55:36 · 462 阅读 · 1 评论 -
破解验证码利器及使用利器
推荐使用:超级鹰# 1.图像识别 很难 根据不同的网页写不同的算法# 2.选择互联网上成熟的验证码破解工具# di:记住你的id# 推荐 超级????(鹰)使用超级鹰:from selenium.webdriver import Chromeimport timefrom chaojiying import Chaojiying_Clientweb = Chrome()web.get('http://www.chaojiying.com/user/login/')#...原创 2021-05-10 00:48:47 · 1224 阅读 · 0 评论 -
selenium中无头浏览器的用法
学习爬虫你一定要对前端的知识有所了解:# 让浏览器在后台默默的运行import timefrom selenium.webdriver import Chromefrom selenium.webdriver.support.select import Select #对 select 的处理from selenium.webdriver.chrome.options import Options # 无头的模块导入# 准备好参数配置 不用记 要用的时候 到时候粘过原创 2021-05-10 00:44:27 · 707 阅读 · 0 评论 -
python爬虫中窗口之间的切换
窗口之间的切换1:from selenium.webdriver import Chromeimport timefrom selenium.webdriver.common.keys import Keysimport csv# Django框架web = Chrome()web.get('https://www.lagou.com/')web.find_element_by_xpath('//*[@id="changeCityBox"]/p[1]/a').click()# e原创 2021-05-10 00:40:42 · 798 阅读 · 0 评论 -
selenium的各种操作
selenium的应用;from selenium.webdriver import Chrome # 使用谷歌浏览器from selenium.webdriver.common.keys import Keys # 通过导入该函数 进行使用 键盘上的回车键import timeweb = Chrome()web.get('https://www.lagou.com/')# 找到某个元素 并且点击它。element = web.find_element_by_xpath('//原创 2021-05-10 00:36:27 · 169 阅读 · 0 评论 -
selenium引入及概念
selenium初步了解# 能不能让我的 程序连接到浏览器 。让浏览器来完成各种复杂的操作 ,我们只接收结果# selenium :自动化测试工具# 打开浏览器 ,就像人一样 去操作浏览器# 程序员 可以从 seleium 中直接提取网页上的各种信息#环境搭建 :# pip install seleium -i 清华源#还不够 还需要 下载 浏览器驱动 : http://npm.taobao.org/mirrors/chromedriver/# 1、chromedriver原创 2021-05-10 00:33:13 · 237 阅读 · 0 评论 -
aiohttp模块实战
aiohttp模块的使用# requests.session 到时候看会话那回忆一下下# File-->Settings-->Editor-->Color&Fonts-->LanguageDefaults-->Linecomment-->设置颜色即可# requests.get() 同步的代码 -->异步代码 aiohttpimport aiohttpimport asyncio# 上面那两个模块 几乎就是同步的urls =原创 2021-05-10 00:30:54 · 148 阅读 · 0 评论 -
线程池and进程池实战
线程池and进程池的学习# 线程池 一次性开辟一些线程,我们用户给线程池提交任务.from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor #线程池 , 进程池def fn(name): for i in range(1,1000): print(name,i)if __name__ == '__main__': #创建线程池 with ThreadPoolEx原创 2021-05-10 00:25:56 · 110 阅读 · 0 评论 -
python代理的设置
代理: IP 直接从网页上搜索就行 有免费的 最好使用 透密的#不到万不得已不用 原理:通过第三方的机器发出请求#http://106.14.250.116:8080import requestsproxies = { 'https' : 'https://191.96.42.80:8080'}requests.packages.urllib3.disable_warnings()'https://106.14.250.116:8080'rsep =...原创 2021-05-09 01:20:01 · 1378 阅读 · 0 评论 -
正则表达式 bs4解析 xpath解析
#正则#bs4 解析#Xpath解析正则 reimport re# list = re.findall(r'\d{11}','我的电话号码是:18047653655,女朋友的电话号码是:15104808753')list = re.findall(r'\d+','我的电话号码是:18047653655,女朋友的电话号码是:15104808753')# findall :匹配字符串中所有符合正则的内容 用的并不是太多print(list)# finditer:匹配字符串中所有的.原创 2021-05-09 01:15:16 · 1121 阅读 · 0 评论