Wikipedia Scraper使用Python

嗨,我正在尝试构建一个简单的维基百科报废工具,可以让我分析文本,并使用python在一个人的生活中构建事件的时间表.我在网上搜索可能的方法,直到现在我已经能够使用BeautifulSoup和urllib2检索数据.到现在为止的代码看起来像这样:

from bs4 import  BeautifulSoup
import urllib2
import re
import nltk
import json


#get source code of page (function used later)
def fetchsource(url):
    source = urllib2.urlopen(url).read()
    return source

if __name__=='__main__':
    #url = "http://en.wikipedia.org/w/index.php?action=raw&title=Tom_Cruise" #works
    url="http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&format=xml&&titles=Tom_Cruise" #works
    print url
    source = fetchsource(url)
    soup = BeautifulSoup(source)
    print soup.prettify()

现在虽然我可以使用它,但我得到的输出有点难以解析,我只是想问是否有更好的方法或可能更可管理的语法,我可以检索数据.
请评论.

解决方法:

您也可以使用pywikipediabot获取文章wikitext.例如,要获得Tom Cruise的wiki文本,就像在您的示例中一样,您可以使用:

import wikipedia

page = wikipedia.Page(wikipedia.getSite(), 'Tom_Cruise')

pageText = page.get()

print pageText

这样您就可以尝试从模板中获取数据,并且如果需要,还有一些wikitext解析器.

相关文章

python方向·数据分析   ·自然语言处理nlp   案例:中...
原文地址http://blog.sina.com.cn/s/blog_574a437f01019poo....
ptb数据集是语言模型学习中应用最广泛的数据集,常用该数据集...
 Newtonsoft.JsonNewtonsoft.Json是.Net平台操作Json的工具...
NLP(NaturalLanguageProcessing)自然语言处理是人工智能的一...
做一个中文文本分类任务,首先要做的是文本的预处理,对文本...