day03 selenium自动化测试

测试京东自动搜索和自动获取数据

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver import ActionChains
import time
from lxml import etree

browser = webdriver.Chrome()
wait = WebDriverWait(browser, 5)

def get_page():
    url = 'https://www.jd.com/'
    browser.get(url)
    input = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '#key')))
    input.clear()
    input.send_keys('机器人')
    button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, '#search button.button')))
    button.click()
    time.sleep(3)

    return browser.page_source

def main():
    html = get_page()
    print(html)
    etree_html = etree.HTML(html)
    items = etree_html.xpath('//div[@id="J_goodsList"]/ul/li[@class="gl-item"]')
    for item in items:
        titles = item.xpath('.//div[@class="p-name p-name-type-2"]//em//text()')
        print(titles)
        title = ''.join(titles)
        print(title)
        print('*' * 20)

if __name__ == '__main__':
    main()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 洞见SELENIUM自动化测试 写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出...
    厲铆兄阅读 11,698评论 3 47
  • 基于 SELENIUM 的自动化测试架构 非常感谢各位查阅本篇文章,笔者在此感谢各位。 目前市面上有分门别类的自动...
    厲铆兄阅读 11,281评论 6 43
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 11,687评论 5 100
  • 仅随时间变迁 却不见喜与怒 哀与乐
    Tiamo渡阅读 1,118评论 0 0
  • 对,就是图片上这只狗,名字叫“蛋卷”。生活有的时候很有趣,比如从一只狗身上,可以看到很多人生道理。 一、在坏情绪面...
    狗小白_1cd9阅读 4,937评论 1 2