Python 如何通过selenium读取文本值
我想抓取电子元件的数字值 我可以访问供应商信息。使用selenium和python。 但我看不懂文字“阿尔法和欧米茄半导体公司” 请帮帮我Python 如何通过selenium读取文本值,python,selenium,selenium-webdriver,xpath,Python,Selenium,Selenium Webdriver,Xpath,我想抓取电子元件的数字值 我可以访问供应商信息。使用selenium和python。 但我看不懂文字“阿尔法和欧米茄半导体公司” 请帮帮我 当您找到带有“s”的元素时,您将找到多个selenium webdriver元素对象。当您找到一个没有“s”的元素时,您正在查找一个selenium webdriver元素对象。每个对象都有一个元素.text属性,用于将这些对象转换为文本 试试这个 trs = [i.text for i in table.find_elements_by_xpath(&
当您找到带有“s”的元素时,您将找到多个selenium webdriver元素对象。当您找到一个没有“s”的元素时,您正在查找一个selenium webdriver元素对象。每个对象都有一个
元素.text
属性,用于将这些对象转换为文本
试试这个
trs = [i.text for i in table.find_elements_by_xpath("tr")]
您应该使用
.text
从元素中获取文本
但是在每个tr
中,您应该找到所有td
并从第二个td
中获取文本。最好使用相对路径(从/
开始)仅在选定的tr
内搜索。如果没有/
,它将始终从根目录进行搜索,并且可能总是得到相同的元素
顺便说一句:如果你只需要第一个表格
,那么你可以在word元素
中使用查找元素
而不使用字符,然后你就不需要[0]
from selenium import webdriver
#chromedriver = '/Users/username/Django/chromedriver'
#driver = webdriver.Chrome(chromedriver)
driver = webdriver.Firefox()
driver.get('https://www.digikey.com/en/products/')
input_box = driver.find_element_by_class_name("product-search-text")
input_box.send_keys('AOD4180')
driver.find_element_by_id("header-search-button").click()
table = driver.find_element_by_xpath("//tbody[@class='MuiTableBody-root']")
#print(table)
trs = table.find_elements_by_xpath("./tr")
for row in trs:
print('row: >>>', row.text, '<<<')
for item in row.find_elements_by_xpath("./td"):
print(' item.text:', item.text)
print('---')
item = trs[3].find_elements_by_xpath("./td")[1]
print('item.text:', item.text)
从selenium导入webdriver
#chromedriver='/Users/username/Django/chromedriver'
#driver=webdriver.Chrome(chromedriver)
driver=webdriver.Firefox()
司机,上车https://www.digikey.com/en/products/')
input\u box=驱动程序。按\u类\u名称(“产品搜索文本”)查找\u元素
输入框。发送密钥('AOD4180')
驱动程序。按id查找元素(“标题搜索按钮”)。单击()
table=driver.find_element_by_xpath(“//tbody[@class='MuiTableBody-root']”)
#打印(表格)
trs=表。通过xpath(“tr”)查找元素
对于trs中的行:
print('row:>>>>',row.text',当您从元素中进行xpath时,使用./tr like so从表中而不是从根元素中获取它。非常感谢。我得到了它。我混淆了属性和函数。我尝试了I.text(),所以失败了
from selenium import webdriver
#chromedriver = '/Users/username/Django/chromedriver'
#driver = webdriver.Chrome(chromedriver)
driver = webdriver.Firefox()
driver.get('https://www.digikey.com/en/products/')
input_box = driver.find_element_by_class_name("product-search-text")
input_box.send_keys('AOD4180')
driver.find_element_by_id("header-search-button").click()
table = driver.find_element_by_xpath("//tbody[@class='MuiTableBody-root']")
#print(table)
trs = table.find_elements_by_xpath("./tr")
for row in trs:
print('row: >>>', row.text, '<<<')
for item in row.find_elements_by_xpath("./td"):
print(' item.text:', item.text)
print('---')
item = trs[3].find_elements_by_xpath("./td")[1]
print('item.text:', item.text)
row: >>> Digi-Key Part Number
785-1219-2-ND - Tape & Reel (TR)
785-1219-1-ND - Cut Tape (CT)
785-1219-6-ND - Digi-Reel® <<<
item.text: Digi-Key Part Number
item.text: 785-1219-2-ND - Tape & Reel (TR)
785-1219-1-ND - Cut Tape (CT)
785-1219-6-ND - Digi-Reel®
item.text:
row: >>> Manufacturer
Alpha & Omega Semiconductor Inc. <<<
item.text: Manufacturer
item.text: Alpha & Omega Semiconductor Inc.
item.text:
row: >>> Manufacturer Product Number
AOD4180 <<<
item.text: Manufacturer Product Number
item.text: AOD4180
item.text:
row: >>> Supplier
Alpha & Omega Semiconductor Inc. <<<
item.text: Supplier
item.text: Alpha & Omega Semiconductor Inc.
item.text:
row: >>> Description
MOSFET N-CH 80V 10A/54A TO252 <<<
item.text: Description
item.text: MOSFET N-CH 80V 10A/54A TO252
item.text:
row: >>> Detailed Description
N-Channel 10A (Ta), 54A (Tc) 3.1W (Ta), 150W (Tc) Surface Mount TO-252, (D-Pak) <<<
item.text: Detailed Description
item.text: N-Channel 10A (Ta), 54A (Tc) 3.1W (Ta), 150W (Tc) Surface Mount TO-252, (D-Pak)
item.text:
row: >>> Customer Reference <<<
item.text: Customer Reference
item.text:
---
item.text: Alpha & Omega Semiconductor Inc.