1.实现自动登录;
2.实现自动签到;
3.实现搜索功能;
requests库应该就能实现这些功能,但是需要解析页面,我这些需求简单,没有性能要求,因此采用简单的selenium库模拟浏览器操作实现这个需求。
selenium、BeautifulSoup
关于selenium的使用在 Python爬取煎蛋妹子图 里有介绍。
遇到的坑:
1.点击登录按钮后,弹出登录框,后续无法找到用户名、密码的element。
开始以为是点击登录后,马上就去获取这个element,此时登录框还没有弹出来,因此延迟了3秒(这个问题在模拟登录百度时碰到过)。依旧不能解决。问题原因就是没有获取到当前登录框的handle,因此获取所有的window_handle,然后切换到当前的,debug发现是始终只有一个handle。
其实什么值得买的登录框是一个frame,需要采用switch_to.frame方法定位到当前frame。
搜索只处理了搜索结果的第一页,如果需要更多的数据,处理分页即可。
以上三个方法即实现了三个功能需求,但是我想要每天自动实现登录、签到功能,同时搜索‘行车记录仪’处理结果能够发送到手机。实现搜索结果发送到手机,自然想到了 itchat 这个库。另外使用 apscheduler 实现了定时任务。
下面开始列遇到的坑:
1.签到时
写的时候没注意,捕获异常写了EOFrror,导致签到过后,后续不会发送微信消息。EOFrror是意味着它发现了一个不期望的文件尾时会抛出的异常,因此这里不会捕获到。
修改成:
Python分别在2007年、2010年、2018年、2020年获得过年度编程语言的称号,是有史以来所有编程语言中囊获该奖项最多的一种语言。
其实国外Python的使用率非常普及,但在国内Python是最近几年才火起来,因此Python正处于快速上升期,市场对于Python开发人才的需求量急剧增加。
而正是因为Python的火热,也带动了工程师们的求职热。国内Python人才缺口高达40万,部分领域如人工智能、大数据开发人才稀缺, 年薪20w都招不到专业人才。口说无凭,请大家继续来看一下Python的招聘数据。
据职友集数据显示,与Python有关的招聘职位薪资待遇如下:
综上可见,当下Python的就业形势是十分可观的,正是入门的好时机。