百度360必应搜狗淘宝本站头条
当前位置:网站首页 > SEO教程 > 正文

机器学习第五发:BS教你如何解析网页,规整数据?

gaoyangw 2025-04-29 00:24 12 浏览 0 评论

现在越来越多的应用和互联网产品做内容的聚合,像今日头条、等等,太多的聚合应用以及不胜枚举,甚至浏览器也可以嵌入聚合的应用。

互联网上拥有太多太多的数据,抓取网页的数据做数据挖掘也是最廉价的获取数据的途径,解析数据是得到规则数据的方法,他为后面数据挖掘、机器学习模型的学习提供支持。

在获取互联网数据的过程中,不可避免的就要使用到网页爬虫技术,此外在抓取下来的网页,需要进一步的解析出自己想要的内容。正则表达式是最常用的解析工具,针对网页目前有个非常便捷的框架,叫做BeautifulSoup。本文使用的是BeautifulSoup 3,现在已经有BeautifulSoup4了,名字改为bs4

(1)下载与安装

# BeautifulSoup 的下载与安装

pip install BeautifulSoup

另外也可以下载安装包进行安装

(2)快速开始

# BeautifulSoup 快速开始

html_doc = urllib2.urlopen('http://baike.baidu.com/view/1059363.htm')

soup = BeautifulSoup(html_doc)

print soup.title

结果:

# BeautifulSoup 结果

<title>前门大街_百度百科</title>

(3)BeautifulSoup对象介绍

BeautifulSoup中主要包含三种类型的对象:

BeautifulSoup.BeautifulSoup

BeautifulSoup.Tag

BeautifulSoup.NavigableString

通过下面例子来认识上面的三种数据类型:

# BeautifulSoup 示例

from BeautifulSoup import BeautifulSoup

import urllib2

html_doc = urllib2.urlopen('http://www.baidu.com')

soup = BeautifulSoup(html_doc)

print type(soup)

print type(soup.title)

print type(soup.title.string)

print soup.title

print soup.title.string

结果为

# BeautifulSoup 示例结果

<class 'BeautifulSoup.BeautifulSoup'>

<class 'BeautifulSoup.Tag'>

<class 'BeautifulSoup.NavigableString'>

<title>百度一下,你就知道</title>

百度一下,你就知道

print soup.title

print soup.title.string

从上面的例子可以比较清晰的看到BeautifulSoup主要包括三种类型的对象。


BeautifulSoup.BeautifulSoup //BeautifulSoup对象

BeautifulSoup.Tag //标签对象


BeautifulSoup.NavigableString //导航string文本对象

(4)BeautifulSoup剖析树

1. BeautifulSoup.Tag对象方法

获取标记对象,通过点号获取Tag对象

# BeautifulSoup 示例

title = soup.title

print type(title.contents)

print title.contents

print title.contents[0]

# BeautifulSoup 示例结果

<type 'list'>

[u'\u767e\u5ea6\u4e00\u4e0b\uff0c\u4f60\u5c31\u77e5\u9053']

百度一下,你就知道

contents方法

获得当前标签的内容list,如果该标签没有子标签,那么string方法和contents[0]得到的内容是一样的。见上面示例

next,parent方法

获得当前的标签的子标签和父标签

# BeautifulSoup 示例

html = soup.html

print html.next

print ''

print html.next.next

print html.next.next.nextSibling

# BeautifulSoup 示例结果

<head><meta http-equiv="content-type" content="text/html;charset=utf-8" /><meta http-equiv="X-UA-Compatible"content="IE=Edge" /><meta content="always" name="referrer" /><meta name="theme-color" content="#2932e1" /><link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /><link rel="icon" sizes="any" mask="mask" href="
//www.baidu.com/img/baidu.svg" /><link rel="dns-prefetch" href="//s1.bdstatic.com" /><link rel="dns-prefetch" href="//t1.baidu.com" /><link rel="dns-prefetch" href="//t2.baidu.com" /><link rel="dns-prefetch" href="//t3.baidu.com" /><link rel="dns-prefetch" href="//t10.baidu.com" /><link rel="dns-prefetch" href="//t11.baidu.com" /><link rel="dns-prefetch" href="//t12.baidu.com" /><link rel="dns-prefetch" href="//b1.bdstatic.com" /><title>百度一下,你就知道</title>

......

</head>

<meta http-equiv="content-type" content="text/html;charset=utf-8" />

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

nextSibling,previousSibling

获得当前标签的下一个兄弟标签和前一个兄弟标签

对不同的网页,将你需要的标签中的数据,例如评论、阅读量、购买量、价格、数量等等,通过BS解析获得。解析是数据获取整理过程中不可少的一部分。

进一步的,借助机器学习模型对上述数据进行建模分析,得到一定的结论。

机器学习第四发:机器学习基础

机器学习第三发:入门书籍及网络课程

机器学习第二发:支持向量机

机器学习第一发:逻辑回归

相关推荐

工具升级后我们应该对现有的推广工具有新定义和认知

淘宝商业系统新变革现在的淘宝啊,那可真是越来越像一个超级智能的商业宇宙了。以前咱做淘宝,就盯着那几个关键词,使劲儿刷坑产,以为这样就能出单。可现在不一样咯,进入了2025年,淘宝已经完全进化到了场景化...

在Ozon上常用的推广商品的工具(ozon上架产品)

这些是用于在类目页面、商品卡片、搜索结果和其他Ozon页面上推广商品的工具。Ozon上有哪些推广工具...

外贸人必备!2025 年最受欢迎的海外社媒营销工具解析

现在做海外生意,社媒营销那可是重中之重。2025年又冒出一堆好用的工具,不管是找客户、做推广还是和用户唠嗑,都能帮上大忙。今天咱就来聊聊这些热门的海外社媒营销工具,分社交媒体平台和即时聊天工具两部分...

免费进群获取福彩3D资料?结果……

在国庆小长假来临的喜悦中,李先生(化名)本以为自己找到了快速致富的机会,但没想到等待他的却是一场精心设计的骗局。真实案件前两天,李先生和往常一样刷视频时,无意间看到一个广告,声称可以免费进群获取福彩3...

揭秘刷单骗局,莫把“陷阱”当“馅饼”!

你以为自己是在做...

12万元的血泪教训:揭秘点赞刷单诈骗全过程

今年3月的那个下午,我的QQ突然被拉入一个陌生群,正是这次意外的“邀请”,让我陷入了一场精心设计的诈骗陷阱,损失了12万元。希望通过分享我的经历,能给大家敲响警钟,避免重蹈覆辙。...

内衣电商小白必备引流秘籍,轻松破局!

新手做内衣电商,是不是天天为没流量愁到头秃?别慌,今天就把压箱底的引流干货分享给大家,都是实操验证过的有效方法,纯新手也能轻松上手!社交媒体引流:精准吸粉的流量密码...

“搜索+公益+明星”,QQ浏览器联动百位明星让好事久久发生

2024年9月,走过十年的99公益日正式升级为“久久公益节”。作为腾讯公益的深度合作平台,QQ浏览器依托搜索能力与丰富的明星资源,连续5年以“搜索+公益+明星”的模式深度参与99公益日。...

刷单兼职怎样最赚钱?看完这篇,绝对不亏!

网络刷单日进百金?坐在家里就能赚钱?...

推荐内容运营最需要的14个网站(做内容运营)

...

动动手指就能赚钱的好事,为啥轮到你?

刷单,日进斗金?...

零成本快速获客成交的五大方法(获客成本计算方法)

线上获客的五大方法以下是陈老师根据十几年新媒体营销的经验总结出来的五个0成本快速获客的方法,这些方法简单易学,学了马上就能用,用了就能见到效果。这些方法虽然简单,但是效果确实很不一般。陈老师曾经用赠送...

父亲10年为女儿QQ点赞3.7万次 只因女儿一个要求

近日,网友“未名湖锦鲤”分享的一段特殊的亲情故事...

快手极速版看我如何通过一个广告获得1800金币,干货经验分享

#打卡挑战局#哈喽大家好,我是左十一,今天又来给大家分享多拿金币的小技巧以及疑难杂症的解决方法了,今天主要给大家带来关于快手极速版,如何操作才能通过一个广告获取1800金币的超高金币奖励。很多朋友总是...

“爱芥末”就是全球第一个QQ等级最高的用户

今天凌晨腾讯官微突然宣布全球第一个QQ256级用户诞生了。这个用户叫“爱芥末”,等级图标变成了从来没出现过的“时光企鹅”。腾讯还特意给发了限量版纪念品,终身超级会员和很多皮肤。...

取消回复欢迎 发表评论: