我想做一个个人的Instagram下载工具。它使用的是BeautifulSoup4和请求库。我将只放置照片或视频的URL。Instagram对图片和视频有不同的属性。对于视频,他们有og:video;对于图像,他们有og:image属性。我只想检查它是否是图像,然后从元数据中收集图像链接。或者,如果是视频,收集直接的视频链接并使用wget下载。
我正在尝试如果属性视频“og:==”:code elif property =="og:video":code,但是,它似乎根本不起作用。
import requests
from bs4 import BeautifulSoup
import wget
url = input("Enter Instagram Video/Pic URL: ")
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
for data in soup.find_all('meta'):
if soup.find_all('meta', property="og:video"):
x = data["content"]
elif soup.find_all('meta', property="og:image"):
x = data["content"]
wget.download(x)发布于 2019-04-21 07:23:01
在for循环中,您将在soup对象中再次调用find_all方法,您应该在其中签入每个data对象。试试这个:
for data in soup.find_all('meta'):
if data.get('property') == "og:video":
x = data.get("content")
elif data.get('property') == "og:image":
x = data.get("content")https://stackoverflow.com/questions/55778510
复制相似问题