2026-02-23 13:00 3
打开百度图片网站#xff0c;点击搜索xxx#xff0c;打开后#xff0c;滚动滚动条#xff0c;发现滚动条越来越小#xff0c;说明图片加载…前言

既然是做爬虫那么肯定就会有一些小心思比如去获取一些自己喜欢的资料等。
打开百度图片网站点击搜索xxx打开后滚动滚动条发现滚动条越来越小说明图片加载是动态的应该是通过ajax获取数据的网站地址栏根本不是真正的图片地址。
按F12打开开发者模式我们边滚动边分析发现下面的url才是真正获取图片地址的。
https://image.baidu.com/search/acjson?tnresultjson_comlogidxxxxxxxipnrjct201326592isfpresultfrword你搜索的内容queryWord你搜索的内容cllmieutf-8oeutf-8adpicidstzichdlatestcopyrightssetabwidthheightfaceistypeqcncexpermodenojcisAsyncpn120rn30gsm781721292699879盲目分析分析其中pn120这有可能就是page
row_num然后再去试着修改pn值为03060去试试发现果然数据不同得。
实锤了…
通过分析可知data中就是真正的图片数据好了我们可以拿到url拿到各种数据了。
我们是循环爬取数据的爬取数据后还得保存到文件夹中所以要引入os
mkdir_dir_at_curr_path(dir_name):try:os.mkdir(dir_name)print(文件夹,dir_name,创建成功)except
FileExistsError:print(文件夹,dir_name,已经存在)def
Safari/537.36,Access-Control-Allow-Credentials:
true,Access-Control-Allow-Origin:
http://m.baidu.com,http://www.baidu.com,Connection:keep-alive,Content-Encoding:
br,Content-Type:application/json}定义url以及headers
因为是循环爬取所以url肯定是动态的也就是改一下pn的值查询的人物的名称保证通用性。
而且发现单纯的请求返回的数据不正常这个时候我们就得加上headers了这个没办法百度肯定会有一些防御性的措施来防止爬虫捣乱。
Safari/537.36,Access-Control-Allow-Credentials:
true,Access-Control-Allow-Origin:
http://m.baidu.com,http://www.baidu.com,Connection:keep-alive,Content-Encoding:
br,Content-Type:application/json}
get_url(search_name,page_size):urlhttps://image.baidu.com/search/acjson?tnresultjson_comlogid8332766429333445053ipnrjct201326592isfpresultfrwordsearch_namequeryWordsearch_namecl2lmieutf-8oeutf-8adpicidst-1zichdlatestcopyrightssetabwidthheightface0istype2qcnc1expermodenojcisAsyncpnstr(page_size)rn30gsm3c1721294093333return
创建文件夹mkdir_dir_at_curr_path(search_name)#是否继续循环去下载flagTrue#
确定是第几次下载request_count0while(flag):print(第,request_count1,次下载中)#
获取urldownload_numrequest_count*30url
get_url(search_name,download_num)#
获取请求头headersget_headers()#发送请求获得响应数据resprequests.get(url,headersheaders)#
确定是json数据了jsonDataresp.json()if
jsonData[data][{}]:print(已经全部下载完成)#
sub_url.startswith(http):responserequests.get(sub_url)#
下载后图片名称下标pic_indexfile_size1#图片名称curr_file_namesearch_name_str(pic_index)#
open(str(search_name/curr_file_name).jpg,wb)
f:f.write(response.content)print(第,pic_index,张图片下载完成)#
__main__:down_load_pics(你搜索的内容)真的是perfect完全达到预期
创建文件夹mkdir_dir_at_curr_path(search_name)#是否继续循环去下载flagTrue#
确定是第几次下载request_count0while(flag):print(第,request_count1,次下载中)#
获取urldownload_numrequest_count*30url
get_url(search_name,download_num)#
获取请求头headersget_headers()#发送请求获得响应数据resprequests.get(url,headersheaders)#
确定是json数据了jsonDataresp.json()if
jsonData[data][{}]:print(已经全部下载完成)#
sub_url.startswith(http):responserequests.get(sub_url)#
下载后图片名称下标pic_indexfile_size1#图片名称curr_file_namesearch_name_str(pic_index)#
open(str(search_name/curr_file_name).jpg,wb)
f:f.write(response.content)print(第,pic_index,张图片下载完成)#
Safari/537.36,Access-Control-Allow-Credentials:
true,Access-Control-Allow-Origin:
http://m.baidu.com,http://www.baidu.com,Connection:keep-alive,Content-Encoding:
br,Content-Type:application/json}
get_url(search_name,page_size):urlhttps://image.baidu.com/search/acjson?tnresultjson_comlogid8332766429333445053ipnrjct201326592isfpresultfrwordsearch_namequeryWordsearch_namecl2lmieutf-8oeutf-8adpicidst-1zichdlatestcopyrightssetabwidthheightface0istype2qcnc1expermodenojcisAsyncpnstr(page_size)rn30gsm3c1721294093333return
mkdir_dir_at_curr_path(dir_name):try:os.mkdir(dir_name)print(文件夹,dir_name,创建成功)except
FileExistsError:print(文件夹,dir_name,已经存在)if
__main__:down_load_pics(xxx任何你喜欢的内容)
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback