簡體   English   中英

從沒有 Web 定位器、Selenium、Python 的頁面讀取信息

[英]Reading information from a page without Web Locators , Selenium , Python

xpath_id = '/html/body'
conf_code = driver.find_element(By.XPATH, (xpath_id))
code_list = []
for c in range(len(conf_code)):
    code_list.append(conf_code[c].text)

如上所示,我選擇了 xpath 定位器,但我找不到文本,這是因為這個特定的網頁是完全空白的,因為只有“正文”中的文本,頁面的 html 如下所示:

«html», «head», «body» '我想閱讀和保存的文本' «body», «/html»

如何閱讀此文本,然后將其存儲在變量中

你的問題不夠清楚。
無論如何,如果該頁面上有多個包含文本的元素,您可以使用以下內容:

xpath_id = '/html/body/*'
conf_code = driver.find_elements(By.XPATH, (xpath_id))
code_list = []
for c in conf_code:
    code_list.append(c.text)

在從那里獲取所有這些元素之前,不要忘記添加一些延遲以使頁面完全加載

如果你真的只是抓取一個如此簡單的網站,你不需要 selenium。 抓取帶有請求的網站並在正文標簽上拆分結果以獲取文本。 更簡單的代碼並避免了 selenium 驅動程序的開銷。

import requests

url = "http://your-url-here.com"
content = requests.get(url).text
the_string_youre_looking_for = content.split('<body>')[1].split('</body>')[0]

這是你要找的嗎? 如果不是,也許嘗試改寫您的問題,因為很難理解您希望代碼做什么以及在什么上下文中。

解決使用

打印(驅動程序.page_source)

我得到了完整的 HTML 內容,並且由於其簡單性,使用«body»標簽很容易提取到所需的內容

暫無
暫無

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

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