Python网页解析器使用实例详解


Posted in Python onMay 30, 2020

python 网页解析器

1、常见的python网页解析工具有:re正则匹配、python自带的html.parser模块、第三方库BeautifulSoup(重点学习)以及lxm库。

Python网页解析器使用实例详解

2、常见网页解析器分类

(1)模糊匹配 :re正则表达式即为字符串式的模糊匹配模式;

(2)结构化解析: BeatufiulSoup、html.parser与lxml,他们都以DOM树结构为标准,进行标签结构信息的提取。

3.DOM树解释:即文档对象模型(Document Object Model),其树形标签结构,请见下图。

所谓结构化解析,就是网页解析器它会将下载的整个HTML文档当成一个Doucment对象,然后在利用其上下结构的标签形式,对这个对象进行上下级的标签进行遍历和信息提取操作。

# 引入相关的包,urllib与bs4,是获取和解析网页最常用的库
from urllib.request import urlopen
from bs4 import BeautifulSoup

# 打开链接
html=urlopen("https://www.datalearner.com/website_navi")

# 通过urlopen获得网页对象,将其放入BeautifulSoup中,bsObj存放的目标网页的html文档

bsObj=BeautifulSoup(html.read())
print(bsObj)

# soup = BeautifulSoup(open(url,'r',encoding = 'utf-8'))

import requests
from bs4 import BeautifulSoup

headers={'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36','referer':"www.mmjpg.com" }
all_url = 'http://www.mmjpg.com/'
  #'User-Agent':请求方式
  #'referer':从哪个链接跳转进来的

start_html = requests.get(all_url, headers=headers)
  #all_url:起始的地址,也就是访问的第一个页面
  #headers:请求头,告诉服务器是谁来了。
  #requests.get:一个方法能获取all_url的页面内容并且返回内容。

Soup = BeautifulSoup(start_html.text, 'lxml')
  #BeautifulSoup:解析页面
  #lxml:解析器
  #start_html.text:页面的内容

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单介绍Python中的RSS处理
Apr 13 Python
Python作用域用法实例详解
Mar 15 Python
Python中函数及默认参数的定义与调用操作实例分析
Jul 25 Python
PyQt5利用QPainter绘制各种图形的实例
Oct 19 Python
Pandas之drop_duplicates:去除重复项方法
Apr 18 Python
Python设计模式之原型模式实例详解
Jan 18 Python
学习python可以干什么
Feb 26 Python
搞定这套Python爬虫面试题(面试会so easy)
Apr 03 Python
python中while和for的区别总结
Jun 28 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
Django处理Ajax发送的Get请求代码详解
Jul 29 Python
python给list排序的简单方法
Dec 10 Python
PyQt5实现画布小程序
May 30 #Python
Java ExcutorService优雅关闭方式解析
May 30 #Python
Python定时任务APScheduler原理及实例解析
May 30 #Python
Python生成器next方法和send方法区别详解
May 30 #Python
Python新手学习标准库模块命名
May 29 #Python
Django Path转换器自定义及正则代码实例
May 29 #Python
Python新手如何理解循环加载模块
May 29 #Python
You might like
【COS正片】蕾姆睡衣cos,纯洁可爱被治愈了 cn名濑弥七
2020/03/02 日漫
Ajax PHP 边学边练 之三 数据库
2009/11/26 PHP
PHP不用递归遍历目录下所有文件的代码
2014/07/04 PHP
PHP使用JSON和将json还原成数组
2015/02/12 PHP
从盛大通行证上摘下来的身份证验证js代码
2011/01/11 Javascript
jQuery的deferred对象使用详解
2011/08/20 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
2012/04/26 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
jquery实现叠层3D文字特效代码分享
2015/08/21 Javascript
js模态对话框使用方法详解
2017/02/16 Javascript
JavaScript在控件上添加倒计时功能的实现代码
2017/07/04 Javascript
原生js检测页面加载完毕的实例
2018/09/11 Javascript
vue路由跳转传参数的方法
2019/05/06 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
[06:30]DOTA2英雄梦之声_第15期_死亡先知
2014/06/21 DOTA
python的类方法和静态方法
2014/12/13 Python
Python随机生成手机号、数字的方法详解
2017/07/21 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
Django框架模板注入操作示例【变量传递到模板】
2018/12/19 Python
Python实现的IP端口扫描工具类示例
2019/02/15 Python
PyQt5实现简易计算器
2020/05/30 Python
Python 3.8新特征之asyncio REPL
2019/05/28 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
2019/08/20 Python
tensorflow使用range_input_producer多线程读取数据实例
2020/01/20 Python
python re模块匹配贪婪和非贪婪模式详解
2020/02/11 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
Python结合Window计划任务监测邮件的示例代码
2020/08/05 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
工商管理专业实习生自我鉴定
2013/09/29 职场文书
高中生家长会演讲稿
2014/01/14 职场文书
简历中个人自我评价分享
2014/03/15 职场文书
药剂专业求职信
2014/06/20 职场文书
债务追讨律师函
2015/06/24 职场文书
小学运动会加油稿
2015/07/22 职场文书
mysql数据库隔离级别详解
2022/06/16 MySQL