Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何通过selenium读取文本值_Python_Selenium_Selenium Webdriver_Xpath - Fatal编程技术网

Python 如何通过selenium读取文本值

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(&

我想抓取电子元件的数字值

我可以访问供应商信息。使用selenium和python。 但我看不懂文字“阿尔法和欧米茄半导体公司”

请帮帮我


当您找到带有“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.