Python的简单爬取html中的数据

首先要安装好python的环境,然后cmd进入DOS界面
按住两个第三方包
1.求请网页的html数据

pip install reqeusts

Requests库的7个主要使用方法
requests.request() 构造一个请求,支撑以下各方法的基础方法
requests.get() 获取HTML网页的主要方法,对应HTTP的GET方法
requests.head() 获取HTML网页头信息的方法,对应HTTP的HEAD
requests.post() 向HTML网页提交POST请求的方法,对应HTTP的POST
requests.put() 向HTML网页提交PUT请求的方法,对应HTTP的PUT
requests.patch() 向HTML网页提交局部修改请求,对应于HTTP的PATCH
requests.delete() 向HTML页面提交删除请求,对应HTTP的DELETE
2.这个将网页的内容规范呈现

pip install beautifulsoup4

引用

 import requests
 from bs4 import BeautifulSoup

在这里插入图片描述
爬取的网站的源代码
如果有中文 r.encoding=r.apparent_encoding 标签一致( r.encoding=‘utf-8’ )
在这里插入图片描述
寻找底下的所有a链接
在这里插入图片描述
查找a标签下的 href 的属性
在这里插入图片描述
根据正则表达式进行模糊查询
在这里插入图片描述
find_all(name,attrs,recursive,string,**kwargs)
1.name:对标签名称的检索的字符串

  soup.find_all('a')
    for tag in soup.find_all('a'):print(tag.name)

2.attrs:是对标签属性值检索的字符串,要求精准检索

    soup.find_all('p','course')
    soup.find_all(id='link1')

模糊检索

soup.find_all(id=re.compile('lin'))

3.recursive:是否对子孙全部检索

soup.find_all('a',recursive=True)

默认为True,显示子标签,False不显示子标签
4.string:<>…</>中字符串区域的检索字符串

soup.find_all(string='Basic"') 

结果显示Basic
遍历
上行 不用必须在循环里
soup.a.parents

下行
for p in soup.body.contents:print(p) 遍历一层

必须用迭代 in 循环

.children

.descendants  到叶子节点,全部都出来

平行遍历
寻找兄弟节点
previous_sibling .previous_sibling… 可以迭代 多个节点,通过 for语句展示加s 左节点
next_sibling next_siblings 多个节点

猜你喜欢

转载自blog.csdn.net/qq_40183281/article/details/89207784
今日推荐