首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python中抓取多个元数据?

如何在python中抓取多个元数据?
EN

Stack Overflow用户
提问于 2019-04-21 07:05:59
回答 1查看 78关注 0票数 0

我想做一个个人的Instagram下载工具。它使用的是BeautifulSoup4和请求库。我将只放置照片或视频的URL。Instagram对图片和视频有不同的属性。对于视频,他们有og:video;对于图像,他们有og:image属性。我只想检查它是否是图像,然后从元数据中收集图像链接。或者,如果是视频,收集直接的视频链接并使用wget下载。

我正在尝试如果属性视频“og:==”:code elif property =="og:video":code,但是,它似乎根本不起作用。

代码语言:javascript
复制
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)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-21 07:23:01

for循环中,您将在soup对象中再次调用find_all方法,您应该在其中签入每个data对象。试试这个:

代码语言:javascript
复制
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")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55778510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档