一个解析开放图协议的模块

opengraph的Python项目详细描述


open graph是python的一个模块,用于解析opengraph协议,您可以在http://ogp.me/

安装

pip安装opengraph

功能

  • 将其用作python dict
  • 从特定URL输入和解析
  • 从先前提取的HTML中输入和分析
  • HTML输出
  • json输出

用法

来自URL

>>> import opengraph
>>> video = opengraph.OpenGraph(url="http://www.youtube.com/watch?v=q3ixBmDzylQ")
>>> video.is_valid()
True
>>> for x,y in video.items():
...     print "%-15s => %s" % (x, y)
...
site_name       => YouTube
description     => Eric Clapton and Paul McCartney perform George Harrison's "While My Guitar Gently Weeps" at the...
title           => While My Guitar Gently Weeps
url             => http://www.youtube.com/watch?v=q3ixBmDzylQ
image           => http://i2.ytimg.com/vi/q3ixBmDzylQ/default.jpg
video:type      => application/x-shockwave-flash
video:height    => 224
video           => http://www.youtube.com/v/q3ixBmDzylQ?version=3&autohide=1
video:width     => 398
type            => video

来自html

>>> HTML = """
... <html xmlns:og="http://ogp.me/ns#">
... <head>
... <title>The Rock (1996)</title>
... <meta property="og:title" content="The Rock" />
... <meta property="og:type" content="movie" />
... <meta property="og:url" content="http://www.imdb.com/title/tt0117500/" />
... <meta property="og:image" content="http://ia.media-imdb.com/images/rock.jpg" />
... </head>
... </html>
... """
>>> movie = opengraph.OpenGraph() # or you can instantiate as follows: opengraph.OpenGraph(html=HTML)
>>> movie.parser(HTML)
>>> video.is_valid()
True

生成json或html

>>>
>>>
>>>

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
spring boot在使用Java 9的SprnigBoot中找不到org/slf4j/LoggerFactory   java如何查找对象中非空属性的数量   javascript AngularJS和REST:执行删除操作,发送要删除的许多项的数组   java WAS7和Axis获得ClassCastException:IBM Crypto的TDCNP与javax不兼容。加密。密码   当从多个线程以相反顺序执行equals()时,Java的同步集合出现问题   依赖java的spring启动应用程序启动,而不是主模块sbt   java@Async阻止一个线程继续,直到其他线程完成   java按钮故障   java thymeleaf,将模型属性绑定到多个表单元素   使用泛型的java查询   java Hibernate JPA侦听器未收到调用   java如何让我的监听器工作,并用物品位置显示吐司?   java未能延迟初始化角色集合:无法初始化代理无会话   java JBPM持久性示例恢复工作流   JavaSpring以json的形式获取对对象转换的响应   java如何使用Proguard成功地用Dagger 2.0混淆项目?   Android中的java字符串拆分错误   如何使用DockerJavaLibrary启动docker容器?   C++在java中是否有条件编译?