| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 小白也能轻松上手selenium,无忧获取淘宝商品信息,献给手把手教的会的你 -> 正文阅读 |
|
[开发测试]小白也能轻松上手selenium,无忧获取淘宝商品信息,献给手把手教的会的你 |
目录前言快双十一了,大家一定有自己喜欢的商品想要趁机收入囊中,淘宝在10月20号就开启了预售,但低估了大家的爆发力,服务器一度崩溃,因此上了头条。接下来,我就要手把手教大家用python代码获取想要的商品的数据。 我采集的数据格式是这样的,选取标题,价格,商家名称,付款人数和地区坐标做了采集。具体的需求具体分析,大家有什么别的需要采集的,学完这篇文章,自然就会修改了
公开的项目,在安装git的电脑上使用以下命令即可下载到本地计算机
准备工作系统要求首先声明,这次程序完全在windows下运行,Windows7,Windows10都可以。 集成开发环境下载这些工具都已经打包好了,下载地址CSDN本地下载,一开始2天可能审核中;百度网盘提取码:kc97 取得这些工具后,依次安装好python和pycharm、谷歌浏览器, 配置开发环境打开pycharm新建一个工程,环境选择Virtualenv
在这个位置,将那个浏览器驱动压缩包解压好的exe文件放进去 打开我的电脑,全局搜索chrome.exe,找到并打开位置,把驱动文件也给那个文件夹复制一份 在pycharm的terminal中输入以下命令安装指定版本的selenium,最新的4.00版本已经不太适合3.7了,直接安装selenium可能会报错。
安装好selenium库后,准备工作至此就已经万事俱备,等东风起了。 分析网站首先进入的是淘宝首页这一页上的动作目标是在搜索框输入自己要搜索的商品名称,然后单击搜索 接着显示的是登录页面
登录后进入搜索结果页
编写程序先做基本的配置处理数据保存和浏览器配置的问题 数据文件建一个taobaoshuju.csv文件,以gbk编码追加方式写,w是写入的画笔,先写了一行标题
浏览器配置这个配置主要是屏蔽自动化测试的提示信息和相关环境变量,减少被对方服务器检测到使用了selenium的可能
特殊字符去除函数虽然是写入csv文件,不是作为文件名,字符要求没这么高,但是有些字符写不进去,需要提前去除,标题和商店名都有可能遇到,在自己调试的过程中遇到停下的地方就看看是哪个字符引发的,把它加入punctuation 中排除
模拟搜索——第一个页面的操作用浏览器打开网站页面,在搜索框右键-》检查-》在源代码中相应位置右键-》Copy-》Copy XPath或者Copy Full XPath,即可获得这个输入框的xpath,后续的其他位置XPath也是照此法动作,不再赘述。 推荐大家安装xpath插件,可以比对是不是拿到了正确的路径,另外自己找xpath的阶段不必去Chrome中找,Google现在的插件商店可不好进去。推荐大家使用双核浏览器,可以直接搜索下载扩展。
browser.get:打开了个页面 browser.find_element_by_xpath:通过xpath获取页面的元素 模拟登录——第二个页面的操作这里演示两种登录方式,短信登录和淘宝软件扫码登录 短信登录短信登录中间做了用户输入等待,待用户在pycharm中输入收到的短信后,再进行登录按钮的点击,短信登录一天有次数限制,测试过多就会被淘宝禁用
淘宝软件扫码登录这是个很简单的登录方式,只需要用户打开软件扫一下确认就可以了,基本上没有触发次数限制,因为需要等待扫码,所以休眠一段时间来暂停程序
循环数据采集——商品页面的操作提取的是每一个商品格子里的几个信息,同样是拷贝xpath过来,动态变化的位置参数可以通过比对不同的格子数据提取出来,作为循环变量,这里一共提取500条数据。
如果需要获取大量的信息,可以放开数据量的循环条件,做成死循环,在商品结果页的分类栏里先进行筛选和排序也是提高自己数据指向性的好方法。 后记本教程到这里就结束了,如果你有什么疑问和建议,欢迎大家在下面留言,期待您的一键三连! |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 2:56:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |