用python来爬取某鱼的商品信息(1/2)

目录

前言

第一大难题------找到网站入口

曲线救国

模拟搜索

第二大难题------登录

提一嘴

登录cookie获取

第一种

第二种

第四大难题------无法使用导出的cookie

原因

解决办法

最后

出现小问题

总结


前言

本章讲理论,后面一节讲代码

拿来练练手的,练练selenium包,实战一下

(本来想拿来练手的,没想到他喵的有挺多防爬的,直接开局就困难难度我靠,凸(艹皿艹 ))

找到可以爬取的网站

第一大难题------找到网站入口

但是咸鱼官方的网站已经关闭了(开局就不利)

闲鱼.淘宝二手 - 轻松卖闲置,放心淘二手闲鱼.淘宝二手是一个社区化的二手闲置交易市场,不仅支持各种同城及线上的担保交易,更安全,同时还有最专业的放心购二手商家,让你轻松在这买卖二手闲置。https://goofish.com/

GG

曲线救国

但是后面发现可以通过淘宝手机版网页版的入口直接进入咸鱼网页版的入口(反正都是爬取怎么进的不重要啦!!!)

链接放着里了,怎么进别问我了

淘宝淘宝网 - 亚洲较大的网上交易平台,提供各类服饰、美容、家居、数码、话费/点卡充值... 数亿优质商品,同时提供担保交易(先收货后付款)等安全交易保障服务,并由商家提供退货承诺、破损补寄等消费者保障服务,让你安心享受网上购物乐趣!https://main.m.taobao.com/index.html

好了第一大难题(找到网页版入口解决了)

模拟搜索

接下来就是利用python的selenium包模拟点击

右键搜索款点击检查就可以定位到该元素的xpath的路径(新版的selenium有许多不同的用法我会在下一章中进行代码实现,这一章主要讲解理论)

然后在python代码中输入你要搜索的文字内容再回车即可

第二大难题------登录

在这一个咸鱼网页版中,你必须要登录才可以

这样你就要先登录才可以访问网页

最大难题------登录界面滑块验证

提一嘴

在这个登录页面中,登录页面是iframe内嵌入其中的页面的

所以你无法直接定位到登录框(我搞了好久反应过来,真的离谱!!)

登录cookie获取

所以你有两种选择

第一种

直接在python中打开登录页面进入登录页面然后登录直接用selenium库中的get_cookie获取cookie并保存

登录https://passport.goofish.com/mini_login.htm?ttid=h5%40iframe&redirectType=iframeRedirect&returnUrl=%2F%2Fh5.m.goofish.com%2Fapp%2Fvip%2Fh5-webapp%2Flib-login-message.html%3Forigin%3Dhttps%253A%252F%252Fh5.m.goofish.com&appName=xianyu&appEntrance=web&isMobile=true想法相对来说不这么绕,但是遗憾的是我无法登录(因为登录有滑块验证,我是几乎过不了的,手动都不行)

第二种

在正常网页中登入之后用浏览器插件提取出来

我用的是cookie editor

在网页版中正常登录可以过滑块验证

之后用插件复制出json文件,并且进行粘贴

第四大难题------无法使用导出的cookie

使用代码导入是报错

bash 复制代码
 assert cookie_dict['sameSite'] in ['Strict', 'Lax'] AssertionError()

原因

提取出来的cookie中samesite的值不为strict以及lax两种中的一种,他就会报错

解决办法

只需要在json字典中把samesite的值全部改为Strict即可

最后

然后添加cookie然后刷新界面就可以发现搜索结果出来了

出现小问题

由于然后短时间内多次请求依旧会有阴间的滑块验证,所以我推荐设置好后半小时爬取一次即可

总结

这一次实战经历真的让我遇到了selenium许多奇奇怪怪的反爬手段,也是让我可以大幅度提升自己实战经验的一个经历,前前后后排bug,绕反爬,这一个项目打了整整两天。累die

相关推荐
dialect_27 分钟前
KMP算法
开发语言·c++·算法
总要学点什么1 小时前
第89篇:三维特效-螺旋圆效果——让螺旋臂卷起一圈圈外扩的涟漪
开发语言·javascript·ecmascript·webgl·cesium·空间分析·1024程序员节
前端精髓1 小时前
结构化输出with_structured_output(抽卡)
python·langchain
尹人入圣2 小时前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
开开心心_Every3 小时前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea
chenbingjie_c3 小时前
C++ 多态完全指南:从虚函数重写到虚函数表原理
开发语言·c++
Nuanyt3 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
吴卫斌3 小时前
定投ETF实战指南(四):行业/主题ETF——定投的“进攻端“
开发语言·python·股票·量化
2601_967987373 小时前
Python——入门级(定义功能def函数)
python·函数·可变参数·默认参数·关键字参数
超级架构师4 小时前
PRAXO-CORE 2.5.0:用 conformance 和显式边界构建 Go Agent 框架
开发语言·人工智能·后端·golang·ai编程·智能体框架·praxo-core