如何用 Python 抓取 javascript 網站?

WBOY
發布: 2024-02-10 15:40:04
轉載
1127 人瀏覽過

如何用 Python 抓取 javascript 网站?

問題內容

我正在嘗試抓取一個網站。我嘗試過使用兩種方法,但兩種方法都沒有為我提供我正在尋找的完整網站原始碼。我正在嘗試從下面提供的網站 url 中抓取新聞標題。

網址:「https://www.todayonline.com/」

這是我嘗試過但失敗的兩種方法。

方法一:美湯

tdy_url = "https://www.todayonline.com/"
page = requests.get(tdy_url).text
soup = beautifulsoup(page)
soup  # returns me a html with javascript text
soup.find_all('h3')

### returns me empty list []
登入後複製

方法2:selenium beautifulsoup

tdy_url = "https://www.todayonline.com/"

options = Options()
options.headless = True

driver = webdriver.Chrome("chromedriver",options=options)

driver.get(tdy_url)
time.sleep(10)
html = driver.page_source

soup = BeautifulSoup(html)
soup.find_all('h3')

### Returns me only less than 1/4 of the 'h3' tags found in the original page source
登入後複製

請幫忙。我嘗試過抓取其他新聞網站,這要容易得多。謝謝。


正確答案


您可以透過 api 存取資料(查看「網路」標籤):

例如,

import requests
url = "https://www.todayonline.com/api/v3/news_feed/7"
data = requests.get(url).json()
登入後複製

以上是如何用 Python 抓取 javascript 網站?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!