2016-05-17 1 views
-1

J'utilise Python Goose pour extraire des articles à partir de pages Web. Cela fonctionne bien pour de nombreuses langues, mais échoue pour l'hindi. J'ai essayé d'ajouter l'arrêt Hindi en tant que stopwords-hi.txt et de définir target_language sur hi, sans succès. Merci, EranComment extraire des articles de pages Web Hindi avec Goose?

+0

Qu'est-ce qui échoue exactement comment? –

+0

La fonction filtered_text ne renvoie rien –

Répondre

0

Ouais j'ai eu le même problème. J'ai travaillé sur l'extraction d'articles dans toutes les langues régionales indiennes et je n'ai pas pu extraire le contenu seul avec Goose. Si vous ne pouvez utiliser que la description de l'article, la méta_ description fonctionne parfaitement. Vous pouvez l'utiliser à la place de filtered_text qui ne retourne rien.

Une autre alternative, mais plus de lignes de code:

import urllib 
from bs4 import BeautifulSoup 

url = "http://www.jagran.com/news/national-this-pay-scale-calculator-will-tell-your-new-salary-after-7th-pay-commission-14132357.html" 
html = urllib.urlopen(url).read() 
soup = BeautifulSoup(html, "lxml") 

##removing all script, style and reference links to get only the article content 
for script in soup(["script", "style",'a',"href","formfield"]): 
    script.extract() 


text = soup.get_text() 

lines = (line.strip() for line in text.splitlines()) 
chunks = (phrase.strip() for line in lines for phrase in line.split(" ")) 
text = '\n'.join(chunk for chunk in chunks if chunk) 

print (text) 

communication ouverte: En fait, je suis le code d'origine quelque part sur un débordement de pile uniquement. Modifié un tout petit peu.