码迷,mamicode.com
首页 > 编程语言 > 详细

Python Show-Me-the-Code 第 0008 题 提取HTML正文内容

时间:2015-05-07 12:37:09      阅读:757      评论:0      收藏:0      [点我收藏+]

标签:python   网页   解析   html   

第 0008 题:一个HTML文件,找出里面的正文


思路:我把这里的正文理解为网页中我主要内容,那么怎么去抓取这个主要内容呢?我一开始的想法是用beautifulsoup来解析网页,但是又想到如果要抽取正文的话这样做还涉及到比较复杂的算法,而且对于不同的网页来说效果可能做不到很好。后来我发现了Python-goose(Github)这个神器,它是基于NLTK和Beautiful Soup的,分别是文本处理和HTML解析的领导者,目标是给定任意资讯文章或者任意文章类的网页,不仅提取出文章的主体,同时提取出所有元信息以及图片等信息,支持中文网页(用到了结巴分词)。这个正好符合需求,所以直接拿来用了。

安装python goose:


0008.提取HTML正文内容.py

#!/usr/bin/env python
#coding: utf-8
from goose import Goose
from goose.text import StopWordsChinese
import sys
reload(sys)
sys.setdefaultencoding("utf-8")

# 要分析的网页url
url = ‘http://www.ruanyifeng.com/blog/2015/05/thunk.html‘

def extract(url):
    ‘‘‘
    提取网页正文
    ‘‘‘
    g = Goose({‘stopwords_class‘: StopWordsChinese})
    article = g.extract(url=url)
    return article.cleaned_text

if __name__ == ‘__main__‘:
    print extract(url)


阮一峰博客上一篇文章测试,效果如下:
技术分享

Python Show-Me-the-Code 第 0008 题 提取HTML正文内容

标签:python   网页   解析   html   

原文地址:http://blog.csdn.net/huangxiongbiao/article/details/45557631

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!