相关疑难解决方法(0)

使用Python从HTML文件中提取文本

我想使用Python从HTML文件中提取文本.如果我从浏览器复制文本并将其粘贴到记事本中,我想要的输出基本相同.

我想要比使用可能在格式不正确的HTML上失败的正则表达式更强大的东西.我见过很多人推荐Beautiful Soup,但是我使用它时遇到了一些问题.首先,它选择了不需要的文本,例如JavaScript源代码.此外,它没有解释HTML实体.例如,我希望' 在HTML源代码中转换为文本中的撇号,就像我将浏览器内容粘贴到记事本中一样.

更新 html2text看起来很有希 它正确处理HTML实体并忽略JavaScript.但是,它并不完全产生纯文本; 它会产生降价,然后必须将其转换为纯文本.它没有示例或文档,但代码看起来很干净.


相关问题:

html python text html-content-extraction

222
推荐指数
12
解决办法
32万
查看次数

通过API从mediawiki页面获取文本内容

我对MediaWiki很新,现在我有点问题.我有一些Wiki页面的标题,我想使用api.php获取所述页面的文本,但我在API中找到的所有内容都是获取页面的Wiki内容的方法(使用wiki标记).我使用了这个HTTP请求......

/api.php?action=query&prop=revisions&rvlimit=1&rvprop=content&format=xml&titles=test
Run Code Online (Sandbox Code Playgroud)

但我只需要文本内容,没有Wiki标记.MediaWiki API可以实现吗?

mediawiki wikipedia-api mediawiki-api

58
推荐指数
7
解决办法
5万
查看次数

如何从维基百科中获取纯文本

我一直在寻找大约2个月的时间来找到一个只获得维基百科描述部分的脚本.(这是我正在建造的机器人,不适用于IRC.)也就是说,当我说的时候

/wiki bla bla bla
Run Code Online (Sandbox Code Playgroud)

它将转到维基百科页面bla bla bla,获取以下内容,并将其返回到聊天室:

"Bla Bla Bla"是由Gigi D'Agostino制作的一首歌的名字.他把这首歌描述为"我写的一篇文章,思考所有谈话和谈话但没有说什么的人".着名但无意义的声乐样本取自英国乐队Stretch的歌曲"你为什么这样做"

这是我找到的最接近的,但它只获取URL:

import json
import urllib.request, urllib.parse

def google(searchfor):
  query = urllib.parse.urlencode({'q': searchfor})
  url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s' % query

  search_response = urllib.request.urlopen(url)
  search_results = search_response.read().decode("utf8")
  results = json.loads(search_results)
  data = results['responseData']
  hits = data['results']

  if len(hits) > 0:
    return hits[0]['url']
  else:
    return "No results found."
Run Code Online (Sandbox Code Playgroud)

(Python 3.1)

mediawiki wikipedia wikipedia-api python-3.x mediawiki-api

19
推荐指数
4
解决办法
3万
查看次数