使用 Python 下载 Instagram 个人资料图片

pythonserver side programmingprogramming

可以使用 Python 中的 Beautiful Soup 和 Request 模块下载 Instagram 个人资料图片。Instagram 是最受欢迎的社交媒体平台之一,允许用户与关注者分享照片和视频。作为 Instagram 用户,您可能会遇到一些有趣的个人资料图片,您可能想要保存或下载。在本文中,我们将使用 Python 中的 Beautiful Soap 和 Instaloader 库下载 Instagram 个人资料图片。

方法 1:使用 Beautiful Soap 和 Request 模块

在此方法中,我们使用请求模块向用户的 Instagram 个人资料 URL 发送 GET 请求,并返回 HTML 响应。我们需要解析 HTML 响应并提取用户的个人资料图片。这可以使用 Beautiful Soap 来完成,方法是查找将 property 属性设置为 `og:image` 的元标记,该标记在 content 属性中包含用户个人资料图片的 URL。

示例

在下面的示例中,download_profile_pic('Instagram') 函数中的 instagram 是您要为其下载个人资料图片的个人资料的用户名。

import requests
from bs4 import BeautifulSoup

def download_profile_pic(username):
    # 为用户的 Instagram 个人资料创建 URL
    url = f"https://www.instagram.com/{username}/"
    
    # 向 URL 发送 GET 请求并获取 HTML 响应
    response = request.get(url)
    
    # 使用 BeautifulSoup 解析 HTML 响应
    soup = BeautifulSoup(response.content, 'html.parser')
    
    # 查找包含个人资料图片 URL 的  标记
    meta_tag = soup.find('meta', attrs={'property': 'og:image'})
    
    # 从  标记的"content"属性中提取 URL
    profile_pic_url = meta_tag['content']
    
    # 为下载的个人资料图片创建文件名
    file_name = f"{username}_profile_pic.jpg"
    
    # 向个人资料图片 URL 发送 GET 请求并下载图片
   pic_response = requests.get(profile_pic_url)
   with open(file_name, 'wb') as f:
      f.write(pic_response.content)

   print(f"Profile picture for {username} downloaded successfully!")

# 示例用法:下载用户"instagram"的个人资料图片
download_profile_pic('instagram')

输出

rohit_the_lucifer 的个人资料图片已成功下载!

方法 2:使用 Instaloader 库。

在使用 instaloader 库之前,我们需要使用 Python 中的 pip 命令安装该库。

pip install instaloader

现在要使用 instaloader 库下载 Instagram 个人资料图片,请导入 instaloader 库,然后创建 Instaloader 类的实例,并使用 instaloader 类的 download_profile() 函数下载个人资料图片。

示例

在下面的代码中输入您要为其下载个人资料图片的个人资料的 Instagram 用户名。

import instaloader

# 创建 Instaloader 类的实例
loader = instaloader.Instaloader()

dp = "instagram_user_name"

# 下载用户的个人资料图片
loader.download_profile(dp, profile_pic_only=True)

print(f"{dp} 的个人资料图片已成功下载!")

输出

instagram_user_name 的个人资料图片已成功下载!

结论

在本文中,我们讨论了如何使用 Beautiful Soap 和 Python 中的 instaloader 库下载 Instagram 个人资料图片。Beautiful Soap 用于解析 HTML 内容并获取个人资料图片的 URL,以便使用 Python 中的请求模块下载它。您可以使用此代码下载您的朋友、家人甚至您最喜欢的名人的个人资料图片。


相关文章