51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5012|回复: 10
打印 上一主题 下一主题

[原创] Python + Selenium验证搜索显示

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-8-26 22:41:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人初学Python+Selenium测试,最近在百度搜索设置每页显示20条后,输入某一关键词搜索,如何验证在搜索结果中的第1页显示条数为20条,如果等于20,验证失败?

请高手赐教!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2018-8-26 22:43:21 | 只看该作者
本人初学Python+Selenium测试,最近在百度搜索设置每页显示20条后,输入某一关键词搜索,如何验证在搜索结果中的第1页显示条数为20条,如果不等于20,验证失败?

请高手赐教!
回复 支持 反对

使用道具 举报

  • TA的每日心情
    慵懒
    昨天 10:20
  • 签到天数: 1513 天

    连续签到: 2 天

    [LV.Master]测试大本营

    3#
    发表于 2018-8-27 11:05:47 | 只看该作者
    分析下结构体,每条记录前面应该都有编号的,判断下是否等于20即可。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-10-22 16:47
  • 签到天数: 16 天

    连续签到: 1 天

    [LV.4]测试营长

    4#
    发表于 2018-8-27 11:20:07 | 只看该作者

    我是显示10条的,通过上图可看出上是有规律的 ,通过搜索存在是否等于10即可

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-12-21 17:28
  • 签到天数: 20 天

    连续签到: 1 天

    [LV.4]测试营长

    5#
    发表于 2018-8-27 15:25:52 | 只看该作者
    本人也是初学不久,使用python+selenium编写了以下代码,可以参考下
    1. from selenium import webdriver
    2. from lxml import etree
    3. from pyquery import PyQuery as pq
    4. import time

    5. driver = webdriver.Ie()
    6. driver.get('https://www.baidu.com/')
    7. driver.implicitly_wait(3)

    8. driver.find_element_by_link_text('设置').click()
    9. driver.find_element_by_link_text('搜索设置').click()

    10. driver.find_element_by_id('nr').find_element_by_xpath('//*[@id="nr"]/option[2]').click()
    11. driver.find_element_by_xpath('//*[@id="gxszButton"]/a[1]').click()
    12. driver.switch_to_alert().accept()

    13. driver.find_element_by_id('kw').send_keys('Python Selenium 句柄')
    14. driver.find_element_by_id('su').click()
    15. time.sleep(3)

    16. page = driver.page_source
    17. doc =pq(page)
    18. doc = etree.HTML(str(doc))
    19. contents = doc.xpath("//div[@id='content_left']/div/h3")

    20. for x in contents:
    21.     title = x.xpath('a/text()')
    22.     print(title)

    23. print('======================================================')

    24. if title.count == 10:
    25.     print('Pass')
    26. else:
    27.     print('No')


    28. driver.quit()
    复制代码
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2018-8-27 21:52:05 | 只看该作者
    非常感谢3楼,四楼和五楼的回答。。尤其是五楼还贴出了源码。。我回头去试一试看看效果。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2018-8-27 22:02:48 | 只看该作者
    qqq911 发表于 2018-8-27 11:05
    分析下结构体,每条记录前面应该都有编号的,判断下是否等于20即可。

    谢谢您的回复。。推我有帮助。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2018-8-27 22:03:29 | 只看该作者
    zhu_angel 发表于 2018-8-27 11:20
    我是显示10条的,通过上图可看出上是有规律的 ,通过搜索存在是否等于10即可

    谢谢您的回复,对我有帮准。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2018-8-27 22:04:01 | 只看该作者
    NancyWangDL 发表于 2018-8-27 15:25
    本人也是初学不久,使用python+selenium编写了以下代码,可以参考下

    谢谢您的回复,对我有帮助。。万分感谢源代码。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-13 03:31 , Processed in 0.067160 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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