我们先创建一个简单的脚本吧,在test文件夹创建test_baidu.py:import os
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
URL = “http://www.baidu.com”
base_path = os.path.dirname(os.path.abspath(file)) + ‘…’
driver_path = os.path.abspath(base_path+’\drivers\chromedriver.exe’)
locator_kw = (By.ID, ‘kw’)
locator_su = (By.ID, ‘su’)
locator_result = (By.XPATH, ‘//div[contains(@class, “result”)]/h3/a’)
driver = webdriver.Chrome(executable_path=driver_path)
driver.get(URL)
driver.find_element(*locator_kw).send_keys(‘selenium 灰蓝’)
driver.find_element(*locator_su).click()
time.sleep(2)
links = driver.find_elements(*locator_result)
for link in links:
print(link.text)
driver.quit()
复制代码如果想要搜索“Python selenium”,是不是要再创建一个脚本?还是把原来的脚本修改一下?
或者我们可以用unittest来改一下,把两次搜索分别写一个测试方法:
import os
import time
import unittest
from selenium import webdriver
from selenium.webdriver.common.by import By
class TestBaiDu(unittest.TestCase):
URL = "http://www.baidu.com"
base_path = os.path.dirname(os.path.abspath(__file__)) + '\..'
driver_path = os.path.abspath(base_path+'\drivers\chromedriver.exe')
locator_kw = (By.ID, 'kw')
locator_su = (By.ID, 'su')
locator_result = (By.XPATH, '//div[contains(@class, "result")]/h3/a')
def setUp(self):
self.driver = webdriver.Chrome(executable_path=self.driver_path)
self.driver.get(self.URL)
def tearDown(self):
self.driver.quit()
def test_search_0(self):
self.driver.find_element(*self.locator_kw).send_keys('## 标题selenium 灰蓝')
self.driver.find_element(*self.locator_su).click()
time.sleep(2)
links = self.driver.find_elements(*self.locator_result)
for link in links:
print(link.text)
def test_search_1(self):
self.driver.find_element(*self.locator_kw).send_keys('Python selenium')
想要资料的,评论区扣666,我免费送给你!## 标题