51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 7178|回复: 4
打印 上一主题 下一主题

Python+Selenium back()返回后运行driver.find_element_by_link_text(u'下一页')报错

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:47
  • 签到天数: 528 天

    连续签到: 1 天

    [LV.9]测试副司令

    跳转到指定楼层
    #
    发表于 2021-8-2 14:04:16 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
    1测试积点
    先爬取QQ空间日志目录,获取到特定QQ日志后进入日志,爬取日志内容后返回;返回后,运行到跳转到下一页就出错,
    next_page = driver.find_element_by_link_text(u'下一页')
    page = page + 1
    print(QQnum,u'正在抓取日志第%d页面内容······' % page)
    next_page.click()
    错误信息:<class 'selenium.common.exceptions.NoSuchElementException'> : Message: no such element: Unable to locate element: {"method":"link text","selector":"下一页"}
    (Session info: chrome=93.0.4542.2)
    主要代码如下;
    driver.get('https://user.qzone.qq.com/' + 'qq号' + '/2')
    driver.implicitly_wait(5)
    time.sleep(2)
    1.         driver.switch_to.frame('app_canvas_frame')
    2.         next_page = 'page'
    3.         page = 1
    4.         try:
    5.             while next_page:
    6.                 ele = driver.find_element_by_xpath("//*[@id='listArea']")
    7.                 now_handle = driver.current_window_handle
    8.                 strs = ele.text.split('\n')
    9.                 for x in strs:
    10.                     for y in keyworldes:# 关键字
    11.                         if y in x:              
    12.                             log_arr.append(x + '\\' + '第' + str(page) + '页')
    13.                             try:
    14.                                 next_page2 = driver.find_element_by_link_text(x)
    15.                                 next_page2.click()
    16.                                 time.sleep(3)
    17.                                 driver.implicitly_wait(5)
    18.                                           
    19.                             except:
    20.                                 pass
    21.                             driver.back()
    22.                             time.sleep(2)
    23.                             driver.implicitly_wait(3)
    24.                 next_page = driver.find_element_by_link_text(u'下一页')
    25.                 page = page + 1
    26.                 print(QQnum,u'正在抓取日志第%d页面内容······' % page)
    27.                 next_page.click()
    28.                 time.sleep(2)
    29.                 driver.implicitly_wait(3)
    30.         except:
    31.             info = sys.exc_info()
    32.             print(info[0], ':', info[1])
    33.             print(QQnum,u'抓取到日志第%d页面结束' % page)
    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    13 小时前
  • 签到天数: 1803 天

    连续签到: 2 天

    [LV.Master]测试大本营

    4#
    发表于 2021-8-3 14:34:53 | 只看该作者
    换一种定位方式,重新定位
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    15 小时前
  • 签到天数: 2814 天

    连续签到: 2 天

    [LV.Master]测试大本营

    3#
    发表于 2021-8-3 13:29:55 | 只看该作者
    有没有定位到
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    7 小时前
  • 签到天数: 753 天

    连续签到: 2 天

    [LV.10]测试总司令

    2#
    发表于 2021-8-3 12:19:28 | 只看该作者
    重新换下路径
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    12 小时前
  • 签到天数: 1518 天

    连续签到: 2 天

    [LV.Master]测试大本营

    1#
    发表于 2021-8-3 10:25:24 | 只看该作者
    明显定位有问题
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-19 22:46 , Processed in 0.062632 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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