
爬虫
文章平均质量分 71
学习Python爬虫代码笔记
NUC_Dodamce
醉生梦死谁成器,拓马长枪定乾坤。
展开
-
中北大学 - 信息对抗大三下学习课程设计(爬取招标网站,进行招标分析,数据保存execl中)
统计下载数据,过滤数据。为了避免爬取到重复信息,这里再项目中创建了log.txt文件用来记录爬虫爬取的最新状态,如果今日的爬虫爬取到日志信息状态时,说明已经把最新的信息爬取完毕,直接退出爬虫并且更新信息即可。这里选择优先级不同的方式统计,扫描爬取到的信息,按照优先级统计地区出现的次数,最后根据次数最多的城市的省份划分区域。点击“确定”保存设置,任务计划程序会自动执行Python程序,可以在“历史记录”中查看执行情况。切换到“触发器”选项卡,点击“新建”,设置触发器的具体时间和频率,如每天、每周、每月等。原创 2023-06-17 21:53:58 · 1341 阅读 · 3 评论 -
Python-爬虫(JS逆向获取动态POST参数)
可以得知nonce这个参数的值和i相同,i是通过j这个函数生成的,所以把j这个函数复制下来通过execjs调用生成进行测试。具体的步骤就是POST请求这个连接,POST的data参数将参数填写好,返回的是json格式的数据,进行数据清洗保存即可。可以看到,d函数是多个函数的调用需要传入拼接参数,这里直接全部将依赖的函数复制下来进行测试即可。同时还可以得知,xyz这个参数的生成需要d函数,函数传参是固定url+生成的nonce值。nonce这个参数获取成功,接下来就是获取d函数。在JS代码上打断点分析。原创 2022-11-01 10:59:41 · 1219 阅读 · 0 评论 -
Python - JS逆向破解实现翻译软件
发现出现变化的有四处,这些值是通过js代码实现的,我们可以通过寻找这些值的生成法则来动态生成这四个值,来实现“翻译软件”观察js调用栈,进入到js代码中。通过文档搜索的方式找到生成sign这四个键值对值的代码。这是因为每次POST请求,所携带的data参数不同。重新进行抓包对比两次翻译中data参数的变化。首先先通过POST请求向翻译网页发送请求,获取到返回的json数据。这样根据上述分析写出动态生成这四个键值对的代码即可。可以估计,这里就是生成这四个键值对的值的代码。当我门修改要翻译的单词时,就会报错。原创 2022-10-13 10:13:00 · 562 阅读 · 0 评论 -
Python-爬虫(scrapy shell命令、动态页面获取)
scrapy shell + url 启动scrapy shell,通常的目的是调试表达式。使用response.xpath(‘**’)开始xpath调试,response.re开始re正则表达式调试,后面根对应的表达式即可。exit()退出scrapy shell可以发现,这个网页是客户端渲染方式,数据保存在json中,需要重新请求上图的URL,下一页的数据通过更改URL参数中的start来返回,每一页的页面大小是20eg:这种情况下获取下一页:通过在爬取函数中yield方式返回scrapy.Req原创 2022-10-02 14:58:13 · 398 阅读 · 0 评论 -
Python-爬虫(Scrapy爬虫框架,爬取豆瓣读书和评分)
Scrapy是爬虫框架。它分为一下部分,其中引擎是核心通过pip install scrapy在终端上下载这个爬虫框架。注意:框架不能像包一样直接导入,需要生成框架结构,在这个结构上操作启动框架:首先在终端上进入到要生成项目的路径.然后输入启动框架此时项目路径下会有一个框架生成的文件夹之后生成爬虫文件命令如图:先进入爬虫spiders文件夹中,输入命令生成爬虫文件。这里以豆瓣读书为例最后使用scrapy crawl +爬虫名(book)来启动爬虫,因为在终端不方便数据查询,所以一般会使用其他方式启动。原创 2022-09-29 12:34:02 · 5808 阅读 · 0 评论 -
Python_爬虫(字体反爬、爬取C++实习岗位薪资)
字体加密是指:在检查网页时,网页上显示的文字和检查的源代码中显示的不是原文字而是乱码,而乱码是因为对方自己设置了编码格式,从而限制爬取的技术。但是一般加密的文字不会很多,可能只有数字0-9加密等。eg:首先把加密文字编码成utf-8观察加密方式根据图片可知,后面的代表/天前面的代表了加密内容。解密方式:通过查找@font来找网页解密方式可以发现这个网站是通过文件的形式进行加密,将url路径拼接后可以下载到一个文件将这个文件放到项目路径下。这个就是它编码的文件。原创 2022-09-27 15:10:09 · 305 阅读 · 0 评论 -
Python-爬虫、自动化(selenium,动态网页翻页,模拟搜索,下拉列表选择、selenium行为链)
selenium是一个Web自动化测试工具,可以直接运行在浏览器上·支持所有主流的浏览器.可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,基础页面截图等。使用pip install selenium命令下载selenium模块。说明没有下载对应浏览器的驱动,这里使用谷歌浏览器注意:需要根据浏览器版本下载对应插件。如果没有对应版本,直接选择最近版本的插件下载即可,这里选择.52版本即可下载对应平台即可。原创 2022-09-25 11:53:48 · 4339 阅读 · 0 评论 -
Python-爬虫(生产者,消费者模型爬取新发地蔬菜批发数据,数据保存到csv文件)
每一页的数据是通过表单上current字段来传参的。请求方法采用POST方法,数据保存在json中.点击翻页后,在检查页面可以看到。原创 2022-09-22 12:01:25 · 456 阅读 · 0 评论 -
Python-爬虫(生产者、消费者模型爬取王者荣耀壁纸)
其中页数是通过page传递。可以删除jsoncallback字段,保证通过request.get方法获取到的响应可以直接通过json方法转化为字典。图片链接因为带汉字,需要通过urllib库中parse.unquote方法进行解析后在进行获取。首先壁纸数据不在网站源代码中,其中数据被保存到json中。get请求需要传递参数处理函数。原创 2022-09-20 12:50:49 · 325 阅读 · 0 评论 -
Python-爬虫(数据库基本操作,爬取豆瓣电影排行)
Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。EMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。这里假设连接数据库TESTDB使用的用户名为 “testuser” ,密码为 “test123”在你的机子上已经安装了 Python pymysql 模块。在TESTDB数据库中您已经创建了表 EMPLOYEE。您已经创建了数据库 TESTDB.爬取数据函数采用正则表达式提取数据。原创 2022-09-10 12:22:49 · 4745 阅读 · 3 评论 -
Python-爬虫(爬虫练习 爬取古诗文网五言绝句)
采用的数据解析方式:xpath、bs4、re正则。获取对应古诗页面中,古诗的题目和内容。获取网站中所有的五言绝句诗词链接。原创 2022-09-08 12:35:54 · 1591 阅读 · 0 评论 -
Python-爬虫(正则表达式基础、修饰符、元字符、数量修饰符,练习判断身份证是否正确)
首先我们得出前17位的乘积和【(5×7)+(3×9)+(0×10)+(1×5)+(0×8)+(2×4)+(1×*2)+(9×1)+(2×6)+(0×3)+(0×7)+(5×9)+(0×10)+(8×5)+(0×8)+(1×4)+(1×2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,校验码如果出现数字10,就用X来代替,详情参考下方计算方法。地区-----年----月–日-3位顺序码-校验码。原创 2022-09-06 12:03:42 · 916 阅读 · 0 评论 -
Python-爬虫 (BS4数据解析)
BS4数据解析方法是把需要的数据进行截取。处理数据的时间比较长。这里主要以练习BS4数据处理为目标,所以整个过程比较繁琐。最后·如果由多个满足条件的标签,以列表的形式返回。可见,直接获取h1标签内的所有内容。原创 2022-09-03 13:23:43 · 739 阅读 · 0 评论 -
Python-爬虫(xpath数据解析,爬取信息实战)
Python-爬虫(xpath数据解析,爬取链接网信息练习)原创 2022-09-01 12:37:52 · 1136 阅读 · 0 评论 -
Python-爬虫(requests库、二进制数据(图片)获取,GET/POST请求、session请求)
Python-爬虫(requests库、二进制数据(图片)获取,GET/POST请求、session请求)原创 2022-08-31 12:05:49 · 2791 阅读 · 0 评论 -
Python-Socket练习(TCP回显服务器)
需要注意,如果没有设置端口复用,同一个端口不能再短时间内重启服务器。因为TCP断开连接时四次挥手,TIME_WAIT状态时重启服务器时会绑定失败,因为连接没有被完全释放。跟上面的流程类似,这里直接练习Python套接字语法。测试服务器的客户端代码。...原创 2022-08-28 10:21:43 · 301 阅读 · 0 评论 -
Python-爬虫(基础概念、常见请求模块(urllib、requests))
urllib.request模块提供了最基本的构造HITP请求的方法,利用它可以模拟浏览器的一个请求发起过程,同时它还带有处理授权验证(authentication)、重定向(redirection)、浏览器Cookies以及其他内容。这个类有自己的方法,主要包含read、readinto、getheader、getheaders、fileno等方法,和msg、version、status、reason、debuglevel、closed等属性。data参数是可选的。注意测试代码时关闭代理服务器。...原创 2022-08-01 22:33:01 · 1386 阅读 · 1 评论