python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python bs4 BeautifulSoup

Python数据解析bs4库使用BeautifulSoup方法示例

作者:YiYa_咿呀

这篇文章主要为大家介绍了Python数据解析bs4库使用BeautifulSoup方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1. 安装bs4库

pip install bs4

2. 使用beautiful soup

用法如下:

find_all:find_all找到所有符合条件的节点

find:find指的是找第一个符合条件的节点

calss_:因为和python中的关键字class重合,因此在后面加个_加以区分

attrs={"":""}:attrs的对象存储条件,此时的class无需加_

import requests
from bs4 import BeautifulSoup
import re
url = "http://www.crazyant.net/"
r = requests.get(url)
if r.status_code != 200:
    raise Exception()
html_doc = r.text
# 创建beautiful soup,将爬取的内容通过BeautifulSoup解析,这里告诉BeautifulSoup这个是爬取到的html页面,默认也是这个,但是会发出警告
soup = BeautifulSoup(html_doc,"html.parser")
# find_all找到所有符合条件的节点,find指的是找第一个
h2_nodes = soup.find_all("h2",class_="entry-title")

3. 使用bs4爬取优美图库的图片

from bs4 import BeautifulSoup
import requests
import time
url = "https://www.umei.cc/weimeitupian/oumeitupian/nvsheng.htm"
resp = requests.get(url)
resp.encoding = 'utf-8'
page = resp.text
soup = BeautifulSoup(page,'html.parser')
oAs = soup.find("div",class_='pic-list').find_all('a')
aLinks = []
for a in oAs:
    aLinks.append("https://www.umei.cc"+str(a.get("href")))
print(aLinks)
for link in aLinks:
    content = requests.get(link)
    content.encoding = 'utf-8'
    img = BeautifulSoup(content.text,'html.parser').find("div",class_='big-pic').find('img')
    src = img.get("src")
    print(img)
    print(src)
    img_name = src.split('/')[-1]
    img_resp = requests.get(src)
    with open('img/'+img_name,mode = "wb") as f:
        f.write(img_resp.content)
    time.sleep(1)
f.close()
resp.close()
img_resp.close()

结果:

以上就是Python数据解析bs4库使用BeautifulSoup方法示例的详细内容,更多关于Python bs4 BeautifulSoup的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文