Python Selenium从标记中查找元素
我想从Booking.com上搜集一些酒店信息。该网站提供了一些酒店信息,在这种情况下,还有多少房间可用。下面显示了Booking.com网站上的span标记,我只想提取所有列出酒店的data-x-left-count数Python Selenium从标记中查找元素,python,selenium,xpath,web-crawler,Python,Selenium,Xpath,Web Crawler,我想从Booking.com上搜集一些酒店信息。该网站提供了一些酒店信息,在这种情况下,还有多少房间可用。下面显示了Booking.com网站上的span标记,我只想提取所有列出酒店的data-x-left-count数 <span class="only_x_left sr_rooms_left_wrap " data-x-left-count="6"> Nur noch 6 Zimmer auf unserer Seite verfügbar! </span> 然后
<span class="only_x_left sr_rooms_left_wrap " data-x-left-count="6">
Nur noch 6 Zimmer auf unserer Seite verfügbar!
</span>
然后是列表理解,以获得实际的酒店名称,而不是selenium对象
availabilities_element = browser.find_elements_by_xpath("(//span[contains(.,'nur noch')])[2]")
availabilities = [x.text for x in availabilities_element]
但是我在获取数据方面仍然有一些问题。我希望能得到一份可用房间的清单(只是数字,没有更多)。有没有一种干净简单的解决方案?欢迎使用SO。下面是获得空房数量的简单方法
# get all the vacant room elements
rooms = driver.find_elements_by_xpath("//span[@class='only_x_left sr_rooms_left_wrap ']")
for room in rooms:
# get the number of elements
print(room.get_attribute('data-x-left-count'))
假设该属性仅与剩下的房间关联,只需使用属性选择器即可
rooms_left = [item.get_attribute('data-x-left-count') for item in driver.find_elements_by_css_selector("[data-x-left-count]")]
请尝试API:。我确信删除他们的网站是违反TOS的。