列出字典,其中键值对是Web元素的内部文本,在Python中使用Selenium抓取



我使用Selenium库在Python中进行网页抓取. "Links"是公寓(出租)的链接列表。我需要遍历并抓取每个公寓的关键信息,所以最后,我得到了如下所示的字典列表:

key_data = [{'Property type': 'Wohnung', 'room': '3', 'Floor': '1. Stock', 'Living space': '57 m²', 'Year of construction': 'not available'}]. 

不能想出一个python的,简短的方法来做它。我的代码:

key_data = []
for link in links:
url = link
driver.get(url)
hdrs = driver.find_elements_by_class_name("css-cyiock.excbu0j2")#list of web elements
undrhdrs = driver.find_elements_by_class_name("css-1ush3w6.excbu0j2")#list of emelements

找到了一个解决方案,在这里张贴任何人谁有同样的问题。请随时提出更好的解决方案。

key_data = []
for link in links:
url = link
driver.get(url)
hdrs = driver.find_elements_by_class_name("css-cyiock.excbu0j2")
undrhdrs = driver.find_elements_by_class_name("css-1ush3w6.excbu0j2")
keyd_dict = {k.get_attribute("innerText"): v.get_attribute("innerText") for k, v in zip(hdrs, undrhdrs)}
key_data.append(keyd_dict)