因为一些工作需要从网络上获取一些数据资料,从程序朋友哪里了解到可以使用爬虫来自动获取,从而节省大量的时间和机械重复的工作。
因为本身不懂,朋友就推荐了崔大的《Python3网络爬虫开发实战》这本书,然后我就从网络上了解了一下,这本书是新出的,然后更新了很多落伍的知识,大家也也知道,互联网技术更新换代太快了。崔大还专门搭建了一个用来练习爬虫的网站用来让我这样的小白做测试。
经过一段时间的学习和练习,我终于利用appium和mitmdump从小红书上获取到了我想要的资料。同时还节省了大量的时间,大大提高了工作效率(以前这些工作需要2个人2天的时间来整理统计数据)。我也因为这个事情获得公司5K的效率提升奖。
整体事情下来我总结了一下有这些感悟:
一、为什么说这本书适合我这样的小白呢?
1.这本书介绍了学习爬虫之前需要了解的基础知识,如 HTTP、爬虫、代理、网页结构、多进程多线程等内容。可以让我们要做的事情有个了解。
2.深入浅出的介绍了爬虫的“基操”(基本的爬虫操作),最基本的请求库(urllib、requests、httpx)、页面解析库(Beautiful Soup、XPath、pyquery、parsel)和正则表达式的基本用法。我这边用到了request和XPath
3.还有数据存储的知识介绍(包括 TXT、JSON、CSV 各种文件的存储,以及关系型数据库 MySQL 和非关系型数据库 MongoDB、Redis 的基本存取操作)。我这边用到了MongoDB用来存储数据和csv导出数据。
这样就让我对爬虫有了看懂的基础。
二、现学现用
因为我有明确的需求,通过对基础的了解让我有了一个做这件事情的基本逻辑,剩下的就是找对应的方式方法。通过看第十二章的的App 的爬取方法,包括基本的 Charles、mitmproxy 抓包软件的使用。此外,还介绍了 mitmdump 对接 Python 脚本进行实时抓取的方法以及使用 Appium、Airtest 完全模拟手机 App 的操作进行爬取的方法。我选择了利用appium和mitmdump配合真机进行数据获取。
三、书籍技术过时的问题:
对比现在市场存在很久的书籍技术过时问题,新上市的《Python3网络爬虫开发实战》可以让我们掌握最新的知识,比较新技术代表效率的提升。同时图书加网站的配套结合能够是的技术的同步更新更方便,我倒是觉得其他图书的作者这方面可以利用起来。
初步工作就先接触到这里,随着对爬虫的深入了解,一入爬虫深似海,对于项目上线部署、分布式,甚至逆向、深度学习,还任重道远。最后再次感谢崔大和他的《Python3网络爬虫开发实战》,希望我们能一起越走越远。