网络爬虫--BeautifulSoup的安装和初识

本文介绍了在Python3环境中安装和使用BeautifulSoup时可能遇到的问题,包括因版本不匹配导致的‘No module named HTMLParser’或‘No module named html.parser’异常,以及如何通过重新安装或执行代码转换脚本来解决这些问题。
摘要由CSDN通过智能技术生成
一、安装BeautifulSoup
方法一:下载BS4源码, 然后通过setup.py来安装.

     $ Python setup.py install

               bs4源码下载地址: https://www.crummy.com/software/BeautifulSoup/bs4/download/4.0/
 
方法二 :通过pip安装 
 
                pip install beautifulsoup4
 
安装完成后可能出现的问题:

Beautiful Soup发布时打包成Python2版本的代码,在Python3环境下安装时,会自动转换成Python3的代码,如果没有一个安装的过程,那么代码就不会被转换.

如果代码抛出了 ImportError 的异常: “No module named HTMLParser”, 这是因为你在Python3版本中执行Python2版本的代码.

如果代码抛出了 ImportError 的异常: “No module named html.parser”, 这是因为你在Python2版本中执行Python3版本的代码.

如果遇到上述2种情况,最好的解决方法是重新安装BeautifulSoup4.

如果在ROOT_TAG_NAME = u’[document]’代码处遇到 SyntaxError “Invalid syntax”错误,需要将把BS4的Python代码版本从Python2转换到Python3. 可以重新安装BS4:

$ Python3 setup.py install

或在bs4的目录中执行Python代码版本转换脚本

$ 2to3-3.2 -w bs4

二、运行BeautifulSoup
BeautifulSoup 库最常用的对象恰好就是 BeautifulSoup 对象。
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen("http://www.pythonscraping.com/pages/page1.html")
bsObj = BeautifulSoup(html.read())
print (bsObj.h1)
输出结果是:
<h1> An Interesting Title </h1>
和前面例子一样,我们导入 urlopen ,然后调用 html.read() 获取网页的 HTML 内容。这
样就可以把 HTML 内容传到 BeautifulSoup 对象,转换成下面的结构:
• html <html><head>...</head><body>...</body></html>
head
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值