python爬虫学习日历2【基于ubuntu系统】beautifulsoup的强大之处

  前一篇小文中就提到了python的requests库可以获取网络编码中的所有内容,我们获取了自然就必须对它进行加工处理,就像我们学习一样,一本书,我们可以轻易的获取,但是它究竟是在讲哲学还是讲历史呢还是其他云云,需要我们认真分析,取其精华去其糟粕。而在python当然也有做这个工作的’人‘,就是我们需要安装库中的‘beautifulsoup’

  我本来是想继续用昨天的网址来说明的,不过效果不佳,我一会这这篇小文的最后会附上源代码,供各位朋友或者自己再次的学习

html_doc = """
<html><head><title>The Dormouse‘s story</title></head>
<body>
<p class="title"><b>The Dormouse‘s story</b></p>

<p class="story">Once upon a time there were three little sisters; and their names were
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
and they lived at the bottom of a well.</p>

<p class="story">...</p>
"""
from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc)
print soup.text

  

  我引用了一个一段HTML代码,这是官方手册例子,也是这是爱丽丝梦游仙境的 的一段内容。 

  我们看到,提取出了它的关键的东西:去除看不懂的一些代码,留下了能理解的小说文字。 

  之所以学习需要一本书,重要的不是它的所有字的组合,而是部分字的精粹。

  我们能提取出它的所有,当然也能够提取出我们想要的,比如我想提取这本书的名字:

  与

  其实这是这个title是python中自带的获取标题的方法,在HTML代码中,可以看到有两个title,上面的是HTML设置网页的标题,下面是一个标示,soup.title代码爬的是HTML网页设置的标题

  我还可以爬其他的东东 比如特定地点的网址,标识,id,名字...还是用原文HTML举例

  在开始之前,我给介绍一个代码

  这个可以找到所有<a>标签

  充分吸收后,可以继续学习了

<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
1 from bs4 import BeautifulSoup
2 soup = BeautifulSoup(html_doc)
3 for link in soup.find_all(‘a‘):
4     print (link.get(‘href‘))

  以上代码是从文档中找到所有<a>标签的链接,可以也找到<a>标签中的class,id,如果要测试,最好先去预测下会出现什么结果,说不定会有一个大惊喜。

  但是名字是片段中的正文部分,还记得本小文第一个例子吧,爬取爱丽丝梦游仙境 的小说片段。

  我用了一个巧妙的方法,把前面的知识结合起来:

  既然 soup.find_all(‘a‘) 这个代码可以找到所有<a>标签的链接,我们就从这些链接入手,给它text

  咦!说因为现在的是一个列表,这个不能text

  既然是个列表[可以理解为数组吧,个人是这样理解的],我需要一个一个的提取正文

  效果还不错,达到了我想要的效果

  beautifulsoup这个库还有众多功能,小文只是九牛一毛的来说了一下,后面要用的时候再继续扩展,我也需要时间去学习,只有在实战中学习吸收效果才很好。 

  最后要说点什么:刚刚文章开始的时候,我不是说本来要把昨天的拿来用吗,但是效果不佳,至于为什么,我把代码附上,可以去试试

1 import requests
2 from bs4 import BeautifulSoup
3 res = requests.get("http://baike.sogou.com/v77860.htm?pid=baike.box")
4 soup = BeautifulSoup(res.text)
5 print soup.text

 

  

时间: 2024-08-24 07:04:49

python爬虫学习日历2【基于ubuntu系统】beautifulsoup的强大之处的相关文章

【Python爬虫学习实践】基于Beautiful Soup的网站解析及数据可视化

在上一次的学习实践中,我们以Tencent职位信息网站为例,介绍了在爬虫中如何分析待解析的网站结构,同时也说明了利用Xpath和lxml解析网站的一般化流程.在本节的实践中,我们将以中国天气网为例,并基于Beautiful Soup库对其进行数据解析,最后再简单说明pyecharts数据可视化. 中国天气网网址:http://www.weather.com.cn/textFC/hb.shtml 和之前的Tencent职位信息实践一样,我们先来分析一下我们所爬取的网站的结构.在中国天气网中,我们可

Python爬虫学习路线,强烈建议收藏这十一条

(一)如何学习Python 学习Python大致可以分为以下几个阶段: 1.刚上手的时候肯定是先过一遍Python最基本的知识,比如说:变量.数据结构.语法等,基础过的很快,基本上1~2周时间就能过完了,我当时是在这儿看的基础:Python 简介 | 菜鸟教程 2.看完基础后,就是做一些小项目巩固基础,比方说:做一个终端计算器,如果实在找不到什么练手项目,可以在 Codecademy - learn to code, interactively, for free 上面进行练习. 如果时间充裕的

Python爬虫学习系列教程

Python爬虫学习系列教程 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己实际写的一些小爬虫,在这里跟大家一同分享,希望对Python爬虫感兴趣的童鞋有帮助,如果有机会期待与大家的交流. Python版本:2.7 一.爬虫入门 1. Python爬虫入门一之综述 2. Python爬虫入门二之爬虫基础了解 3. Python爬虫入门三之Urllib库的基本使用 4. Python爬虫入门四之Urllib库

Python爬虫学习:四、headers和data的获取

之前在学习爬虫时,偶尔会遇到一些问题是有些网站需要登录后才能爬取内容,有的网站会识别是否是由浏览器发出的请求. 一.headers的获取 就以博客园的首页为例:http://www.cnblogs.com/ 打开网页,按下F12键,如下图所示: 点击下方标签中的Network,如下: 之后再点击下图所示位置: 找到红色下划线位置所示的标签并点击,在右边的显示内容中可以查看到所需要的headers信息. 一般只需要添加User-Agent这一信息就足够了,headers同样也是字典类型: user

Python爬虫学习:三、爬虫的基本操作流程

本文是博主原创随笔,转载时请注明出处Maple2cat|Python爬虫学习:三.爬虫的基本操作与流程 一般我们使用Python爬虫都是希望实现一套完整的功能,如下: 1.爬虫目标数据.信息: 2.将数据或信息存入数据库中: 3.数据展示,即在Web端进行显示,并有自己的分析说明. 这次我先介绍第一个功能中所需要实现的基本操作: 爬虫的基本操作:      表示必须步骤           表示可选步骤 导入爬虫所需要的库(如:urllib.urllib2.BeautifulSoup.Scrap

2018/7/21 Python 爬虫学习

2018/7/21,这几天整理出来的一些Python 爬虫学习代码. import urllib2 response = urllib2.urlopen("http://baidu.com") html = response.read() print html 进一步,可以request import urllib2 req = urllib2.Request("http://www.baidu.com") response = urllib2.urlopen(re

Python实战:Python爬虫学习教程,获取电影排行榜

Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知识总结.希望大家能够快速入门并学习Python这门语言. 本文是在前一部分Python基础之上程序员带你十天快速入门Python,玩转电脑软件开发(四),再次进行的Python爬虫实战课程. 正则表达式实例简单详解 正则表达式干什么用? 就是在字符串中提取我们需要的内容的. 记得哦,要先引用正则表达式模块的哦. re就是正则表达式相

2019年Python爬虫学习必看

如果你用Python3写爬虫,强力推荐<Python网络数据采集>这本书,应该是目前最系统最完善介绍python爬虫的书.可以去图灵社区买电子版.书的内容很新也很系统,从beautifulSoup,requests到ajax,图像识别,单元测试.比起绝大多数blog零散的教程要好的多,看完书后就可以去做些实战项目,这个时候可以去github上找类似的项目借鉴下.图灵社区 : 图书:<Python网络数据采集>国内也有一本讲爬虫的好书,<自己动手写网络爬虫>,这本书除了介

python爬虫学习教程之兼职网数据爬取

源码分享: 可以对着代码练习,学习编程一定要多动手练习. 代码运行效果截图 学习python.python爬虫过程中有不懂的可以加入我的python零基础系统学习交流秋秋qun:前面是934,中间109,后面是170,与你分享Python企业当下人才需求及怎么从零基础学习Python,和学习什么内容.相关学习视频资料.开发工具都有分享! 原文地址:https://www.cnblogs.com/xiaoxiany/p/11072510.html