请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

爬取拉勾网,click()不能实现点击。

试了两种方法:用css和xpath选取节点,只能定位到填写手机号和密码的方框,但是点击“登录”按钮没有反应。

浏览器停留在以下界面:

图片描述

我确定定位到相应的元素了。因为我把登录页面用requests请求单独抓取下来,然后用css选择器试过了。

单独尝试选取相应节点:
图片描述

只放了一张图,但事实上不管是定位外面的

,还是里面的,都试过了。
也尝试了用css选择器或者xpath,都不行。

图片描述

之后尝试了bobby老师您在讲解知乎的时候,用的第三方包mouse,也不行。
我在用mouse包的时候,发现鼠标的光标并不会移动。我怀疑是否安装不成功,或者是路径的设置有问题。但是我无法确定。

上网看了别人的一些博客,也有人写可以用js的方法可以解决。但是我js的语法又不熟悉。

总结一下,
问bobby老师两个问题:
① 如何验证mouse已经正常安装,有没有测试的demo?
② 如果用js来实现的话,可以讲一下相关的js语法吗?

正在回答 回答被采纳积分+3

1回答

提问者 慕粉3883702 2021-02-20 16:54:28

不管是定位外面的div还是里面的input,都无法点击。为什么显示不出来呢……在这里补充一下。

0 回复 有任何疑惑可以回复我~
  • bobby #1
    你可以贴一个可以运行的selenium代码 我本地测试一下,最好不要是scrapy的,是一个单独的完整的py文件即可
    回复 有任何疑惑可以回复我~ 2021-02-21 20:53:00
  • 提问者 慕粉3883702 回复 bobby #2
    谢谢老师,解决了。
    
    很奇怪,我之前在pycharm+scrapy中试了多次,无论怎么试都不行。
    
    之后我用spyder+selenium,把所有无关代码删掉,只写webdriver以及填写账号密码部分的代码,居然就登录上了。
    
    然后再把spyder中的代码复制,在pycharm中新建一个lagou.py文件,粘贴上去,一点一点加代码,就成功获取到了cookie.
    
    看来click()的操作执行不了,不是选取节点本身的问题。
    
    谢谢bobby老师提供思路。
    回复 有任何疑惑可以回复我~ 2021-02-22 13:19:40
  • bobby 回复 提问者 慕粉3883702 #3
    好的。
    回复 有任何疑惑可以回复我~ 2021-02-22 21:53:28
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信