原文地址:http://afen.it/python-beautiful-soup4/
Beautiful Soup 是一个 Python HTML/XML 处理器,设计用来快速地转换网页抓取。以下的特性支撑着 Beautiful Soup:
- Beautiful Soup 不会选择 即使你给他一个损坏的标签。 他产生一个转换DOM树,尽可能和你原文档内容含义一致 。这种措施通常能够你搜集数据的需求。
- Beautiful Soup 提供一些简单的方法以及类Python语法 来查找、查找、修改一颗转换树:一个工具集帮助你解析一棵树并释出你需要的内容。你不需要为每一个应用创建自己的解析工具。
- Beautiful Soup 自动将送进来的文档转换为 Unicode 编码 而且在输出的时候转换为 UTF-8,。 除非这个文档没有指定编码方式或者Beautiful Soup 没能自动检测编码,你需要手动指定编码方式,否则你不需要考虑编码的问题。
Beautiful Soup 转换任何你给他的内容,然后为你做那些转换的事情。你可以命令他 “找出所有的链接”, 或者 “找出所有 class 是 externalLink 的链接” , 再或者是 “找出所有的链接 url 匹配 ”foo.com”, 甚至是 “找出那些表头是粗体文字,然后返回给我文字“.
那些设计不好的网站中的有价值的数据可以被你一次锁定,原本要花数个小时候的工作,通过使用 Beautiful Soup 可以在几分钟内搞定。
windows下面 BeautifulSoup 安装 :
安装包到 :http://www.crummy.com/software/BeautifulSoup/#Download 下载
文档:http://www.crummy.com/software/BeautifulSoup/documentation.html 有中文文档(中文目前只有bs3,bs4确实有点不大一样,尽量查看英文版)
下载后解压, 然后进入目录执行 :
1, python setup.py build
2, python setup.py install
如果python 安装有多个版本 可以在 系统环境变量里面指定一个 路径作为 默认路径。如果没有需要绝对目录执行。(如果没有环境变量可以不加python系统会自动调用也行)
安装完后调试,因为之前是看了bs3的文档
from BeautifulSoup import BeautifulSoup import re doc = ['<html><head><title>Page title</title></head>', '<body><p id="firstpara" align="center">This is paragraph <b>one</b>.', '<p id="secondpara" align="blah">This is paragraph <b>two</b>.', '</html>'] soup = BeautifulSoup(''.join(doc)) print soup.prettify()
如果是安装bs3版本的,这样是没有问题的,如果是安装bs4版本,那么调用是需要修改的
from BeautifulSoup import BeautifulSoup #改为 from bs4 import BeautifulSoup
所以就要尽量看英文的bs4版的文档,中文文档还是落后了些