第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

使用 BeautifulSoup 爬取國家地理的圖片

標(biāo)簽:
Python

一、导入工具

from bs4 import BeautifulSoup as BSimport requestsimport os

1、从 bs4 中导入 BeautifulSoup,并且命名为 BS中文文档
2、导入 requests,用于发出请求,中文文档
3、导入 os 用于文件操作,这里用来存图片,

1、URL国家地理动物系列的主页地址
2、通过 requests.get(URL) 获取到目标页面的 requests 对象,这个对象的文本内容在 text 属性上,html 是目标页面的 html 文本结构

webp

就是这个东西


如果想看一下 requests 对象都含有哪些属性和方法可以使用 dir(),比如:print(dir(requests))

webp


3、使用 BS 解析获取到的 html,采用第三方解析器 lxml(这玩意得安装:pip install lxml
4、通过查看国家地理网页结构后得知图片在类名为 img_listul 标签中

webp

我们要爬取的图片


5、makedirs 方法是递归创建。在当前目录下(./ 代表当前目录)创建 img 目录,exist_ok=True 意味着如果已经有 img 目录,就直接使用这个文件夹;exist_ok=False 则是如果之前已经有了 img 目录则报错;



三、获取到 img 标签并将图片转存到之前创建的 img 目录中

这部分直接在代码里说明

for ul in img_ul:
    imgs = ul.find_all('img')       # 在 ul 标签中找到 img 标签,其实下面也可以不用循环,因为这个页面中,每个 ul 只有一个 img
    for img in imgs:
        url = img['src']            # 获取到 img 标签的 src 属性,即图片地址
        r = requests.get(url, stream=True)  # stream=True 使用流的方式下载,目的是实现边下边存,而不是下载完了再存
        image_name = url.split('/')[-1]     # 这是给图片命名
        with open('./img/%s' % image_name, 'wb') as f:            for chunk in r.iter_content(chunk_size=128):    # 128个单位作为一个块
                f.write(chunk)
        print('Saved %s' % image_name)

四、完整代码

from bs4 import BeautifulSoup as BSimport requestsimport os

URL = "http://www.ngchina.com.cn/animals/"html = requests.get(URL).text
soup = BS(html, 'lxml')
img_ul = soup.find_all('ul', {"class": "img_list"})
os.makedirs('./img/', exist_ok=True)for ul in img_ul:
    imgs = ul.find_all('img')       # 在 ul 标签中找到 img 标签,其实下面也可以不用循环,因为这个页面中,每个 ul 只有一个 img
    for img in imgs:
        url = img['src']            # 获取到 img 标签的 src 属性,即图片地址
        r = requests.get(url, stream=True)  # stream=True 使用流的方式下载,目的是实现边下边存,而不是下载完了再存
        image_name = url.split('/')[-1]     # 这是给图片命名
        with open('./img/%s' % image_name, 'wb') as f:            for chunk in r.iter_content(chunk_size=128):    # 128个单位作为一个块
                f.write(chunk)
        print('Saved %s' % image_name)

webp

图片在这



作者:_白衣青衫_
链接:https://www.jianshu.com/p/3e1a250524e6


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消