html 网页源码解析:bs4中BeautifulSoup
from bs4 import BeautifulSoup
result=requests.request("get","http://www.baidu.com")
result.encoding="utf-8"
print(result.text) #获取源码
soup=BeautifulSoup(result.text,"html.parser") #解析html对象,并赋值给soup
soup.title #获取网页第一个标签为“title”内容
soup.title.string) #获取第一个标签“title”的纯字符串内容
soup.prettify() #获取html网页源码
soup.input["name"] #获取网页第一个标签为“input”内name的属性
soup.input.name #获取标签为input的名字,其实就是“input”
soup.input.attrs #取网页第一个标签为“input”内所有属性
soup.input["name"]="test" #修改标签内的属性
del soup.input["name"] #删除标签内的属性
soup.input["name2"]="wq123" #新增标签内的属性
soup.head.contents #获取标签为head的内容
list(soup.head.children) #获取标签为head的内容,与上面一致
list(soup.head.descendants) #获取标签为head的内容(前面与上面一致,加上-1位号为title内容)
soup.head.parent #获取标签为head父节点所有内容
soup.head.parent.parent #获取标签为head父节点的父节点所有内容
soup.head.next_sibling #获取标签head同级下一个兄弟节点
soup.head.previous_sibling #获取标签head同级上一个兄弟节点
list(soup.head.next_siblings) #获取标签head同级下一个兄弟节点存储为生成器
list(soup.head.previous_siblings) #获取标签head同级上一个兄弟节点存储为生成器
soup.find_all("a",class_="js_a_so") #获取标签为a,class属性为"js_a_so"的所有标签对象
html 网页源码解析:bs4中BeautifulSoup的更多相关文章
- Spark 源码解析 : DAGScheduler中的DAG划分与提交
一.Spark 运行架构 Spark 运行架构如下图: 各个RDD之间存在着依赖关系,这些依赖关系形成有向无环图DAG,DAGScheduler对这些依赖关系形成的DAG,进行Stage划分,划分的规 ...
- 源码解析.Net中IConfiguration配置的实现
前言 关于IConfituration的使用,我觉得大部分人都已经比较熟悉了,如果不熟悉的可以看这里.因为本篇不准备讲IConfiguration都是怎么使用的,但是在源码部分的解读,网上资源相对少一 ...
- 源码解析.Net中DependencyInjection的实现
前言 笔者的这篇文章和上篇文章思路一样,不注重依赖注入的使用方法,更加注重源码的实现,我尽量的表达清楚内容,让读者能够真正的学到东西.如果有不太清楚依赖注入是什么或怎么在.Net项目中使用的话,请点击 ...
- 源码解析.Net中Middleware的实现
前言 本篇继续之前的思路,不注重用法,如果还不知道有哪些用法的小伙伴,可以点击这里,微软文档说的很详细,在阅读本篇文章前,还是希望你对中间件有大致的了解,这样你读起来可能更加能够意会到意思.废话不多说 ...
- 源码解析.Net中Host主机的构建过程
前言 本篇文章着重讲一下在.Net中Host主机的构建过程,依旧延续之前文章的思路,着重讲解其源码,如果有不知道有哪些用法的同学可以点击这里,废话不多说,咱们直接进入正题 Host构建过程 下图是我自 ...
- 源码解析C#中PriorityQueue(优先级队列)的实现
前言 前段时间看到有大佬对.net 6.0新出的PriorityQueue(优先级队列)数据结构做了解析,但是没有源码分析,所以本着探究源码的心态,看了看并分享出来.它不像普通队列先进先出(FIFO) ...
- multiprocessing 源码解析 更新中......
一.参考链接 1.源码包下载·链接: https://pypi.org/search/?q=multiprocessing+ 2.源码包 链接:https://pan.baidu.com/s/1j ...
- 源码解析Android中View的measure量算过程
Android中的Veiw从内存中到呈现在UI界面上需要依次经历三个阶段:量算 -> 布局 -> 绘图,关于View的量算.布局.绘图的总体机制可参见博文< Android中View ...
- spring boot 源码解析52-actuate中MVCEndPoint解析
今天有个别项目的jolokia的endpoint不能访问,调试源码发现:endpoint.enabled的开关导致的. 关于Endpoint, <Springboot Endpoint之二:En ...
随机推荐
- systemd自启动tomcat
tomcat自启动service [Unit] Description=Tomcat After=network.target [Service] Type=forking PIDFile=/usr/ ...
- Hadoop_05_运行 Hadoop 自带 MapReduce程序
1. MapReduce使用 MapReduce是Hadoop中的分布式运算编程框架,只要按照其编程规范,只需要编写少量的业务逻辑代码即可实现 一个强大的海量数据并发处理程序 2. 运行Hadoop自 ...
- 初次安装虚拟机WindowsServer2016
因学习需要,安装windosServer2016,遇到了几个小坑,特地分享一下. 一.windows server 2016 登录 在登录是会出现 输入CTRL+ALT+DEL,才能响应进入用户界面, ...
- xenserver 下载模板
cd /tmp rm -rf Auto.sh wget http://os.xensystem.net/XenSystem/download/Customer/Auto.sh sh Auto.sh
- MongoDB本地安装与启用(windows 7/10)
MongoDB的安装与MongoDB服务配置 Mongo DB 是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式备受当前IT从业人员的青睐.Mongo DB很好的实现了 ...
- 22_6mybatis中的缓存
1.mybatis中的延时加载 问题:在一对多中,当我们有一个用户,它有100个账户. 在查询用户的时候,要不要把关联的账户查出来? 在查询账户的时候,要不要把关联的用户查出来? 在查询用户时,用户下 ...
- 不使用C库函数(Sprintf)将void* 指针转换为十六进制字符串
#include <stdio.h> #include <stdint.h> #include <stdlib.h> void hexDump(void *ptr, ...
- .npy文件怎么打开
import numpy as np test = np.load(r'C:\Users\SAM\PycharmProjects\TEAMWORK\Preprocess_3D\muchdata-50- ...
- js排序--一道js数据结构题
给一个数组: [{ GroupMark: "", GroupName: "hao", SendTime: '123', SendContent: "1 ...
- java.lang.UnsupportedOperationException at java.util.AbstractList
常常使用Arrays.asLisvt()后调用add,remove这些method时出现 Java.lang.UnsupportedOperationException异常.这是由于: Arrays. ...