python 3 html元标记解析器,强调复杂的元标记结构,支持opengraph和twitter卡片标记,包括数组处理

metatron的Python项目详细描述


…图片::https://badge.fury.io/py/metatron.svg
:目标:https://badge.fury.io/py/metatron

==


metatron对象扩展dict,所有的元标记数据都在其中设置。



collector
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


"CPS嫒u观众":"国内观众",
"CPS嫒u changequeueid":"115204091",
"主题颜色":"BB1919",
"MSapplication tilecolor":"BB1919"
}

>;mt['x-country']
>;'GB'



>收集结构开放式图形元标签
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^












<<

<






<
'说明':'访问bbc新闻获取最新新闻…',
'站点名称':'bbc新闻',
'区域设置':'en'u gb',
'文章':{
'作者':'https://www.facebook.com/bbc news',
'部分':'home'
},
"网址":"http://www.bbc.co.uk/news",
'image'''///m.files.bbci.co.uk/modules/bbc morf新闻waf-page meta/2.1.0/bbc新闻logu-logo.png'

<
<




支持opengraph数组(并且可以作为输入接收内容)支持opengraph数组(并且可以作为输入接收内容)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^::

>;content="
<;meta property="og:title"content="first title tag"/>;
<;meta property="og:title"content="second title tag"/>;
<;meta property="og:description"content="description tag"/>;
<;meta property="og:image"content="http://example.com/image.jpg"/>;
<;meta property="og:image:secure_url"content="https://secure.example.com/image.jpg"/>;
<;meta property="og:image:type"content="image/jpeg"/>;
<;meta property="og:image:width"content="400"/>;
<;meta property="og:image:height"content="300"/>;
<;meta property="og:image:alt"content="first image description"/>;
<;meta property="og:image"content="http://example.com/image2.jpg"/>;
<;meta property="og:image:secure_url"content="https://secure.example.com/image.jpg"/>;
<;meta property="og:image:type"content="image/jpeg"/>;
<;meta property="og:image:width"content="500"/>;
<;meta property="og:image:height"content="600"/>;
<;meta property="og:image:alt"content="second image description"/>;
"

>;mt=metatron(content=content,schemas=['og'])
>;mt.traverse()

{
'og':{
'说明':'说明标签',
‘图像’:[
{
‘alt’:‘第一个图像描述’,
‘高度’:‘300’,
‘图像’:‘http://example.com/image.jpg’,
‘安全URL’:‘https://secure.example.com/image.jpg’,
'类型':'图像/jpeg',
'宽度':'400'
},
{
'高度':'有一口咬出来的闪亮的绿色苹果',
'高度':'600',
"图像":"http://example.com/image2.jpg",
"安全URL":"https://secure.example.com/ogp.jpg",
"类型":"图像/jpeg",
"宽度":"500"
}
],
‘title’:[
‘first title tag’,
‘second title tag’
]
}


添加自己的元标记模式
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
您可以为metatron提供自己的元标记模式规范:

>;从metatron导入添加架构规范
>;我的架构规范={
'名称':'boom',
'属性':'name',
'值':'value'
}
>;添加架构规范(我的架构规范)

meta name="boom:title"value="boom title"/>;
<;meta name="boom:description"value="boom description"/>;

:使用

>;mt=metatron(url='http://example.com',schemas=['boom'])
>;mt.traverse()
>;{
"boom":{
"title":"boom title",
"description":"boom description"
}



可以从命令行运行
^^^^^^^^^^^^^^^^^^^^^^




$make run url=http://bbc.co.uk/news schema=og


$python-m metatron.metatron http://bbc.co.uk/newsog

$获取:http://bbc.co.uk/news(schemas:og)
{'og':{'description':'访问bbc新闻获取最新新闻,中断'
'新闻、视频、音频和专题报道。bbc新闻"
"提供可信的世界和英国新闻,以及本地"
"和地区视角。还有娱乐节目,"
"商业、科学、技术和健康新闻',
'图像':'//m.files.bbci.co.uk/modules/bbc morph news waf page meta/2.2.1/bbc戋news戋logo.png',
'地区':'en戋gb',
'部分':'home',
网站名称:'bbc news',
标题:'home-bbc news',
'类型:'website',
'url':'http://www.bbc.co.uk/news'}


dependencies
^^^^^^^^^^^^^^^^^^^^^^^^
-请求
-美化组4



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

推荐PyPI第三方库


热门话题
java如何计算以下代码片段的复杂性?   java他们怎样才能使“瓶子”和“瓶子”这样的词被认为是同一个词呢?这就是我目前所拥有的   用于在不同编码之间转换字符的Java库   Java为什么我输入的每个输入都会忽略我的While循环?   (Java)通过socket发送和映像时出错:Java。木卫一。StreamCorruptedException:无效类型代码:3B   java错误:在camel XML文件中,解组对象是不受支持的类型   springboot+kafka应用程序中的java错误管理   java如何从地图中的值中获取一组值?   二维向量Java   java如果我从未使用ThreadSafeClientConnManager调用closeExpiredConnections,会发生什么   if语句如何在if-else循环中对同一数据使用多个条件?java/安卓   java我如何在安卓中放慢速度?   javaee:需要更好的部署系统   如何使用java将XML文件加载到Oracle18c上的XMLType列   用于连接两个表的java Hibernate查询   在更新数据库之前,java JSP需要使用用户给定的值检查数据库中的值   java无法使用Jersey从rest服务获取数据字段