PYTHON网络爬虫与信息提取[BeautifulSoup](单元四)
1 简介
from bs4 import BeautifulSoup
soup=BeautifulSoup(<p>data</p>,'html.parser')
2 基本元素
解析,遍历,维护,标签树的库
<p class="title"> ...</p> tag对
名称 (属性 attributes)
beautifulsoup 或bs4
from bs4 import BeautifulSoup
import bs4
beautifulSoup 雷
html--------标签树(字符串)转换为beautifulsoup类
from bs4 import BeautifulSoup
soup=
注:解析器(4种)
html.parser 安装bs4库
lxml pip install lxml
xml 同上
html5lib pipinstall html5lib
beautiful 类的基本元素
Tag 标签 尖括号开头结尾
Name 格式:<tag>.name <p>的名字是 ''p''
Attributes 标签的属性,字典形式组织 <tag>.attrs
NavigableString 标签内非属性字符串 表示尖括号之间的内容
soup.a.string 就可以了
Comment 标签内字符串的注释部分
用string 也可以得出这个类型
3 标签树的遍历
.contents 获得子节点的列表
.children 获得子节点的迭代形式
.descendants 获得子孙的迭代形式
儿子节点不管包括标签 还包括\n
soup.body.contents
.parent 节点的父亲标签
.parnets 节点的先辈形式迭代版的
平行遍历(返回按照html文本顺序的节点标签)
平行遍历时实在同一个父标签下的遍历
.next_sibling
.previous_sibling
.next_siblings 迭代版
.next_previous_siblings 迭代版
4 基于bs4显示html的内容
from bs4 import BeautifulSoup
soup=BeautifulSoup(demo,"html.parser") //加载解析器的语句
soup.prettify() //soup 是 BeautifulSoup类型 用以解析html 或者遍历html
"prettify()方法非常好用"
#增加换行符
print(soup.prettify())
PYTHON网络爬虫与信息提取[BeautifulSoup](单元四)的更多相关文章
- Python网络爬虫与信息提取
1.Requests库入门 Requests安装 用管理员身份打开命令提示符: pip install requests 测试:打开IDLE: >>> import requests ...
- 第三次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 第一周 Requests库的爬 ...
- 第3次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 4.提供图片或网站显示的学习进 ...
- 第三次作业-Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 过程. 5.写一篇不少于100 ...
- Python网络爬虫与信息提取笔记
直接复制粘贴笔记发现有问题 文档下载地址//download.csdn.net/download/hide_on_rush/12266493 掌握定向网络数据爬取和网页解析的基本能力常用的 Pytho ...
- 【学习笔记】PYTHON网络爬虫与信息提取(北理工 嵩天)
学习目的:掌握定向网络数据爬取和网页解析的基本能力the Website is the API- 1 python ide 文本ide:IDLE,Sublime Text集成ide:Pychar ...
- Python网络爬虫与信息提取(一)
学习 北京理工大学 嵩天 课程笔记 课程体系结构: 1.Requests框架:自动爬取HTML页面与自动网络请求提交 2.robots.txt:网络爬虫排除标准 3.BeautifulSoup框架:解 ...
- Python网络爬虫与信息提取(二)—— BeautifulSoup
BeautifulSoup官方介绍: Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式. 官方 ...
- PYTHON网络爬虫与信息提取[信息的组织与提取](单元五)
1 三种信息类型的简介 xml : extensible markup language 与html非常相似 现有html后有xml xml是html发展来的 扩展 通用 json 类型 javas ...
随机推荐
- import: not authorized `time' @ error/constitute.c/WriteImage/1028. import: not authorized `rospy' @ error/constitute.c/WriteImage/1028.
- Spring Boot与监控管理
概念: 通过引入spring-boot-starter-actuator,可以使用Spring Boot为我们提供的准生产环境下的应用监控和管理功能.我们可以通过HTTP,JMX,SSH协议来进行操作 ...
- C++ #define,typedef,using用法区别
一.#define #define 是宏定义命令,宏定义就是将一个标识符定义为一个字符串,源程序中的该标识符均以指定的字符串来代替,是预编译命令,因此会在预编译阶段被执行 1.无参宏定义 无参宏的宏名 ...
- PAT甲级——A1093 Count PAT's【25】
The string APPAPT contains two PAT's as substrings. The first one is formed by the 2nd, the 4th, and ...
- 06-6-es6模板字符串
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Apache Pig入门学习文档(一)
1,Pig的安装 (一)软件要求 (二)下载Pig (三)编译Pig 2,运行Pig (一)Pig的所有执行模式 (二)pig的交互式模式 (三)使用pig脚本 ...
- tensorflow的object detection的data augmention的使用
在protoc的目录下有data augmention的提示,而且注意是repeated,也就是你要这样写: 不能写在一个data_aumentation_options下面,至于有哪些选项可以用,可 ...
- C开发系列-预处理指令
简介 OC程序执行过程,在源代码编译成0跟1的二进制文件之前.执行的指令称之为预处理指令. 所有的预处理指令都是以#开头.#import也是预处理指令.预处理指令主要分为三种 宏定义 条件编译 文件包 ...
- mysql工具使用
mysql -u user_name -p123456 -h host_name -P 3306 -D database_name -e "show full processlist;&qu ...
- idea打包可执行jar
(1)在项目上鼠标右键 --> Open Module Settings 或者点击工具栏上的 (2)Artifacts --> + --> JAR --> From modul ...