2017-08-11 75 views
0

我使用Goose從各種URL提取標題和主文本。它適用於大多數網址,只有一個特定的荷蘭新聞網站。任何想法這裏怎麼了?從鵝提取HTML文本(除一個以外的所有工作)

具體問題的URL是here.

我的代碼:

g = Goose() 
content_url = g.extract(url=url) 
allcontent = content_url.cleaned_text 
print allcontent 

我期待整個文本,但奇怪的是我剛剛得到從文章下面的段落在隨機點。

Toerisme was een groot goed toen het een voorrecht was van de elite. Maar nu de massa in het voetspoor treedt van Floortje Dessing gaat het van kwaad tot erger. Het verplaatsen van mensen per cruiseboot of jumbojet is milieubelastend. Toeristen die de bloemetjes buiten zetten, veroorzaken geluidsoverlast in de kleine uurtjes. Toeristenplaatsen veranderen buiten het seizoen in spookoorden. En een bezoek aan de yakherders in Mongolië is een stuk minder interessant als blijkt dat de buren er twee maanden eerder ook waren geweest. 

回答

1

的問題是在2個原因:

  1. 方式鵝是計算的主要內容「坐在html元素,特別是它試圖找到文本塊,然後在HTML樹和更新得分向上移動用於每個封閉元素。作爲輸出,您會根據內部評分獲得最有價值的元素。

  2. 您的網頁結構。如果你檢查html,你會看到文章文本被放置在幾個不同的HTML塊,所以鵝選擇其中之一。

的解決方案取決於,如果你的目標是要分析這種單一網站,你會使用像美麗的湯,LXML模塊的更好,搶等單獨和合並在一起解析文本塊。如果您有數百萬個網站可以抓取,只需接受鵝在開箱即可使用的內容即可。

+0

我對每篇文章的前2-3句感興趣。有沒有辦法強制Goose選擇第一個文本塊? – utengr

相關問題