需要帮助在python中删除此数据吗

2024-10-16 20:51:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个网站,其代码如下:

<div class="d-row js-wrapper" id="row-1"><div class="d-cell js-activator" data-label="type">Residential</div><div class="d-cell d-cell--break" data-label="Company">J Smith</div><div class="d-cell js-target" data-label="Location">UK</div><div class="d-cell js-target" data-label="ID">62144</div><div class="d-cell js-target" data-label="Ask
">730000</div><div class="d-cell js-target" data-label="email">None</div><div class="d-cell js-target" data-label="Contact time (GMT)">
                                8:00 am to 4:30 pm
                        </div> </div>

<div class="d-row js-wrapper" id="row-2"><div class="d-cell js-activator" data-label="type">Commercial</div><div class="d-cell d-cell--break" data-label="Company">JBloggs ltd</div><div class="d-cell js-target" data-label="Location">FR</div><div class="d-cell js-target" data-label="ID">55324</div><div class="d-cell js-target" data-label="Ask
">670000</div><div class="d-cell js-target" data-label="email">None</div><div class="d-cell js-target" data-label="Contact time (GMT)">
                                9:00 am to 5:30 pm
                        </div> </div>

我希望能够将其刮入熊猫数据框。到目前为止,我在selenium中尝试了以下方法:

info = driver.find_element_by_class_name(".d-row")
print(info[0].text)

但这就是:

Residential J Smith UK 62144 730000 None 8:00 am to 4:30 pm

有人能帮忙吗

谢谢


Tags: todivnoneidtargetdatajscell
2条回答

它缺少s它应该是find_element[s]_by_class_name.-d-row不是在该上下文中使用的有效值,它应该用于css选择器,并使用get_attribute()获取元素属性

for row in driver.find_elements_by_css_selector(".d-row"):
    for cell in row.find_elements_by_css_selector('.d-cell'):
        key = cell.get_attribute('data-label').strip()
        value = cell.text.strip()
        print("{}: {}".format(key, value))

如何查找类包含d-cell的所有元素,然后获取属性数据标签

list_elements = driver.find_elements_by_xpath('//div[contains(@class, "d-cell")]')
for element in list_elements:
   print(element.get_attribute("data-label"))

相关问题 更多 >