使用Selenium从Webite抓取文本

时间:2019-10-17 12:50:28

标签: python html selenium

我已经设法进入可以打开此网站https://vehicleenquiry.service.gov.uk/ConfirmVehicle

的阶段

输入车辆登记号,单击“继续”,单击“是”,这是正确的车辆,然后再次继续到下一页。

现在,我正在寻找如何从该网站提取燃油类型数据,即下面列出的汽车(我的父母的汽车)将是PETROL。似乎无法弄清楚-做了很多谷歌搜索!

我还要拉动气缸容量(CC):输入和制造年份。

def vehicleRegChecker():

    from selenium import webdriver
    import time

    driver = webdriver.Chrome()
    driver.get("https://vehicleenquiry.service.gov.uk/ConfirmVehicle")
    driver.find_element_by_name("Vrm").send_keys("VX02LTE")

    python_button = driver.find_elements_by_xpath("//button[@name='Continue'][@type='submit']")[0]
    python_button.click()

    python_button = driver.find_elements_by_xpath("//input[@data-val='true'][@type='radio']")[0]
    python_button.click()

    python_button = driver.find_elements_by_xpath("//button[@name='Continue'][@type='submit']")[0]
    python_button.click()

vehicleRegChecker()

2 个答案:

答案 0 :(得分:0)

我认为以下是您要寻找的内容:

elems = driver.find_elements_by_class_name('list-summary-item')

print(elems[2].text)
print(elems[3].text)

,因为如果您只想使用值,它也具有标题:

elems = driver.find_elements_by_class_name('list-summary-item')

print(elems[2].text.split('\n')[1])
print(elems[3].text.split('\n')[1])

答案 1 :(得分:0)

所有代码运行完之后:

fuel_type = driver.find_element_by_id('FuelTypeShown').text
years_of_manufacture = driver.find_element_by_xpath('//li[.//*[contains(text(), "Year of manufacture")]]//strong').text
cc = driver.find_element_by_xpath('//*[@id="CylinderCapacity"]//strong').text
print(fuel_type)
print(years_of_manufacture)
print(cc)
>>> PETROL
>>> 2002
>>> 1390 cc