开发工具
-
python版本: python-3.8.1-amd64 -
python开发工具: JetBrains PyCharm 2018.3.6 x64 -
安装BeautifulSoup库(指定阿里镜像安装会很快) pip install beautifulsoup4 -i http://mirrors.aliyun.com/pypi/simple/ -
战争与和平小说网页地址http://www.pythonscraping.com/pages/warandpeace.html
爬虫分析
- 打开网页源代码,人名都是有span标签并且class的属性值都是green
<span class="green">Prince Vasili Kuragin</span>
爬虫代码
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen("http://www.pythonscraping.com/pages/warandpeace.html")
bsObj = BeautifulSoup(html, 'html.parser')
namelist = bsObj.findAll('span',{'class':'green'})
for name in namelist:
print(name.get_text())
运行效果
Anna
Pavlovna Scherer
Empress Marya
Fedorovna
Prince Vasili Kuragin
Anna Pavlovna
St. Petersburg
the prince
总结
这里主要使用到了findAll函数来实现获取所有指定属性的标签,还有利用了get_text函数清除所有标签只保含文字信息
|