簡體   English   中英

Python-Selenium table-scraper 只返回第一行

[英]Python-Selenium table-scraper only returns first row

我正在嘗試從帶有硒的表中提取信息。

我得到了行:

rows = driver.find_elements_by_xpath('//tbody/tr')

我試圖在行中獲取兩個特定的單元格:

for r in rows:
    diccionario["property1"] = driver.find_element_by_xpath(xpath).text
    diccionario["property2"] = driver.find_element_by_xpath(xpath).text

with open("bbdd.json", "a", encoding="utf-8") as bd:
    json.dump(diccionario, bd, ensure_ascii=False, indent=4)

但是,它只會返回第一行的信息(重復次數與行數相同)

有沒有辦法“強制”代碼查找我們當前在 for 循環中迭代的行中的元素?

代碼

所有的 trs(行)代碼看起來都一樣。

我需要的 tds/cells 是前兩個(不同行中的每個 td 的類看起來都相同)。

在此處輸入圖片說明

我專注於嘗試訪問單元格本身。 但是,我改變了主意並嘗試從“webelement 父級”(行本身)訪問內容。

該行的 text 屬性包含我需要的信息。

唯一的問題是我必須解析一些文本(並不難)。 所以最后我不需要訪問不同的 tds。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM