吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3705|回复: 7
收起左侧

[学习记录] 求助:基于Python和selenium的广东省干部培训网络学院自动学习脚本

[复制链接]
dqedu 发表于 2020-11-21 09:48
源码来自本坛大神:https://www.52pojie.cn/thread-1105553-6-1.html
网上的大神做修改:http://www.zuIDAima.com/share/4872602977733632.htm

我按步骤做了,运行出错,信息报错如下,求指点解决办法:
D:\driver>python 1.py

DevTools listening on ws://127.0.0.1:57801/devtools/browser/a93402c1-804d-4c8b-9
a1d-259e7f28cca4
nonlocal--该目录下还有8个视频未学习……
Traceback (most recent call last):
  File "1.py", line 149, in <module>
    main()
  File "1.py", line 143, in main
    run_main(video_unstudy_num, browser)
  File "1.py", line 28, in run_main
    elem = browser.find_element_by_link_text('好的,我知道了')
  File "C:\Users\Administrator\anaconda3\lib\site-packages\selenium\webdriver\re
mote\webdriver.py", line 428, in find_element_by_link_text
    return self.find_element(by=By.LINK_TEXT, value=link_text)
  File "C:\Users\Administrator\anaconda3\lib\site-packages\selenium\webdriver\re
mote\webdriver.py", line 976, in find_element
    return self.execute(Command.FIND_ELEMENT, {
  File "C:\Users\Administrator\anaconda3\lib\site-packages\selenium\webdriver\re
mote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Users\Administrator\anaconda3\lib\site-packages\selenium\webdriver\re
mote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Una
ble to locate element: {"method":"link text","selector":"好的,我知道了"}
  (Session info: chrome=87.0.4280.66)

driver (1).rar

1.71 KB, 下载次数: 12, 下载积分: 吾爱币 -1 CB

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

bookaccount 发表于 2020-11-21 10:13
本帖最后由 bookaccount 于 2020-11-21 10:25 编辑

selenium是这样的,没找到element就抛异常,解决办法一是try...catch住异常,一是先用driver.page_source.contains检查是否有你需要的字符串,然后再用find方法得到元素。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
dqedu + 1 + 1 谢谢@Thanks!

查看全部评分

njbb888 发表于 2020-11-21 10:35
 楼主| dqedu 发表于 2020-11-21 10:42
njbb888 发表于 2020-11-21 10:35
现在学习都造假了

你想想一个学习网站能够充实多少人的腰包,你就明白为什么那么多无厘头的网络学习了。
xingc 发表于 2020-11-21 10:53
dqedu 发表于 2020-11-21 10:42
你想想一个学习网站能够充实多少人的腰包,你就明白为什么那么多无厘头的网络学习了。

确实,很多网络学习很水
bookaccount 发表于 2020-11-22 22:23
试试这两种方法:1. 在这两句
  elem = browser.find_element_by_link_text('好的,我知道了')
  elem.click()  前面加一句 改成
  if ('好的,我知道了' in browser.page_source):
        elem = browser.find_element_by_link_text('好的,我知道了')
        elem.click()
     
2.try:
      elem = browser.find_element_by_link_text('好的,我知道了')
      elem.click()
   except:
      pass
 楼主| dqedu 发表于 2020-11-23 17:30
bookaccount 发表于 2020-11-22 22:23
试试这两种方法:1. 在这两句
  elem = browser.find_element_by_link_text('好的,我知道了')
  elem.cl ...

还是不行。不过还是要谢谢你的帮助。
yang586lin 发表于 2021-7-9 06:18
不能用了····
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 00:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表