📜  使用Python进行图像抓取

📅  最后修改于: 2022-05-13 01:54:27.939000             🧑  作者: Mango

使用Python进行图像抓取

抓取是每个人从任何网站获取数据的一项非常重要的技能。在本文中,我们将了解如何使用Python从网站上抓取图像。对于抓取图像,我们将尝试不同的方法。

方法一:使用 BeautifulSoup 和 Requests

  • bs4 : Beautiful Soup(bs4) 是一个Python库,用于从 HTML 和 XML 文件中提取数据。这个模块没有内置于Python中。要安装此类型,请在终端中输入以下命令。
pip install bs4
  • requests Requests 允许您非常轻松地发送 HTTP/1.1 请求。这个模块也没有内置于Python中。要安装此类型,请在终端中输入以下命令。
pip install requests

方法:

  • 导入模块
  • 制作请求实例并传入 URL
  • 将请求传递给 Beautifulsoup()函数
  • 使用 'img' 标签查找所有标签 ('src')

执行:

Python3
import requests 
from bs4 import BeautifulSoup 
    
def getdata(url): 
    r = requests.get(url) 
    return r.text 
    
htmldata = getdata("https://www.geeksforgeeks.org/") 
soup = BeautifulSoup(htmldata, 'html.parser') 
for item in soup.find_all('img'):
    print(item['src'])


Python3
from urllib.request import urlopen
from bs4 import BeautifulSoup
  
htmldata = urlopen('https://www.geeksforgeeks.org/')
soup = BeautifulSoup(htmldata, 'html.parser')
images = soup.find_all('img')
  
for item in images:
    print(item['src'])


输出:

方法二:使用urllib和BeautifulSoup

urllib 是一个Python模块,允许您通过 URL 访问网站并与之交互要安装此类型,请在终端中输入以下命令。

pip install urllib

方法:

  • 导入模块
  • 使用 urlopen() 读取 URL
  • 将请求传递给 Beautifulsoup()函数
  • 使用 'img' 标签查找所有标签 ('src')

执行:

蟒蛇3

from urllib.request import urlopen
from bs4 import BeautifulSoup
  
htmldata = urlopen('https://www.geeksforgeeks.org/')
soup = BeautifulSoup(htmldata, 'html.parser')
images = soup.find_all('img')
  
for item in images:
    print(item['src'])

输出: