- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试 metadata_parser 0.6.6在Python中。他们在他们的页面上给出了说明,我遵循这些说明:
$ pip install metadata_parser
$ python
$ >>> import metadata_parser
$ >>> page = metadata_parser.MetadataParser(url="http://www.cnn.com")
$ >>> print page.metadata
这会打印元数据:
{'og': {}, 'twitter': {}, 'meta': {'msapplication-TileImage': 'http://i.cdn.turner.com/cnn/2012/images/10/15/cnn_logo_144_144.png', 'viewport': 'width=1024', 'googlebot': 'noarchive', 'application-name': 'CNN', 'fb:app_id': '80401312489', 'msapplication-TileColor': '#CA0002', 'robots': 'index,follow', 'refresh': '1800;url=http://www.cnn.com/?refresh=1', 'msapplication-tooltip': 'Breaking News, U.S., World, Weather, Entertainment and Video News', 'last-modified': '2014-08-12T15:19:13Z', 'X-UA-Compatible': 'IE=edge', 'keywords': 'CNN,CNN news,CNN.com,CNN TV,news,news online,breaking news,U.S. news,world news,weather,business,CNN Money,sports,politics,law,technology,entertainment,education,travel,health,special reports,autos,developing story,news video,CNN Intl', 'fb:page_id': '129343697106537', 'content-type': u'text/html;charset=utf-8', 'msapplication-task': 'name=iReport;action-uri=http://ireport.cnn.com;icon-uri=http://ireport.cnn.com/favicon.ico', 'description': 'CNN.com delivers the latest breaking news and information on the latest top stories, weather, business, entertainment, politics, and more. For in-depth coverage, CNN.com provides special reports, video, audio, photo galleries, and interactive guides.'}, 'dc': {}, 'page': {'canonical': 'http://www.cnn.com/', 'title': u'CNN.com - Breaking News, U.S., World, Weather, Entertainment & Video News'}}
接下来我尝试按照他们的示例提取它:
$ >>> print page.get_field('title')
但是,它给了我:“
Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'MetadataParser' object has no attribute 'get_field'"
其余示例代码行类似:
$ >>> print page.get_field('title', strategy=['og',])
$ >>> print page.get_field('title', strategy=['page', 'og', 'dc',])
我测试对象是否有属性:
$ >>> hasattr(page, 'get_field')
$ False
我能做什么呢?谢谢!
Python 版本,如果有帮助的话:
$ >>> import sys
$ >>> print (sys.version)
$ 2.7.3 (default, Sep 26 2013, 20:03:06)
$ [GCC 4.6.3]
在使用 python 2.7.7 的不同机器上也有同样的情况。
最佳答案
metadata_parser 文档不正确。 MetadataParser
类没有定义 get_field
方法,但它确实定义了 get_metadata
方法,这似乎是你想要做什么:
class MetadataParser(object):
<--- *snip* --->
def get_metadata(self, field, strategy=None):
…
所以,你会使用:
$ >>> print page.get_metadata('title')
CNN.com - Breaking News, U.S., World, Weather, Entertainment & Video News
关于Python:对象没有metadata_parser 0.6.6的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25268696/
你能比较一下属性吗 我想禁用文本框“txtName”。有两种方式 使用javascript,txtName.disabled = true 使用 ASP.NET, 哪种方法更好,为什么? 最佳答案 我
Count 属性 返回一个集合或 Dictionary 对象包含的项目数。只读。 object.Count object 可以是“应用于”列表中列出的任何集合或对
CompareMode 属性 设置并返回在 Dictionary 对象中比较字符串关键字的比较模式。 object.CompareMode[ = compare] 参数
Column 属性 只读属性,返回 TextStream 文件中当前字符位置的列号。 object.Column object 通常是 TextStream 对象的名称。
AvailableSpace 属性 返回指定的驱动器或网络共享对于用户的可用空间大小。 object.AvailableSpace object 应为 Drive 
Attributes 属性 设置或返回文件或文件夹的属性。可读写或只读(与属性有关)。 object.Attributes [= newattributes] 参数 object
AtEndOfStream 属性 如果文件指针位于 TextStream 文件末,则返回 True;否则如果不为只读则返回 False。 object.A
AtEndOfLine 属性 TextStream 文件中,如果文件指针指向行末标记,就返回 True;否则如果不是只读则返回 False。 object.AtEn
RootFolder 属性 返回一个 Folder 对象,表示指定驱动器的根文件夹。只读。 object.RootFolder object 应为 Dr
Path 属性 返回指定文件、文件夹或驱动器的路径。 object.Path object 应为 File、Folder 或 Drive 对象的名称。 说明 对于驱动器,路径不包含根目录。
ParentFolder 属性 返回指定文件或文件夹的父文件夹。只读。 object.ParentFolder object 应为 File 或 Folder 对象的名称。 说明 以下代码
Name 属性 设置或返回指定的文件或文件夹的名称。可读写。 object.Name [= newname] 参数 object 必选项。应为 File 或&
Line 属性 只读属性,返回 TextStream 文件中的当前行号。 object.Line object 通常是 TextStream 对象的名称。 说明 文件刚
Key 属性 在 Dictionary 对象中设置 key。 object.Key(key) = newkey 参数 object 必选项。通常是 Dictionary 
Item 属性 设置或返回 Dictionary 对象中指定的 key 对应的 item,或返回集合中基于指定的 key 的&
IsRootFolder 属性 如果指定的文件夹是根文件夹,返回 True;否则返回 False。 object.IsRootFolder object 应为&n
IsReady 属性 如果指定的驱动器就绪,返回 True;否则返回 False。 object.IsReady object 应为 Drive&nbs
FreeSpace 属性 返回指定的驱动器或网络共享对于用户的可用空间大小。只读。 object.FreeSpace object 应为 Drive 对象的名称。
FileSystem 属性 返回指定的驱动器使用的文件系统的类型。 object.FileSystem object 应为 Drive 对象的名称。 说明 可
Files 属性 返回由指定文件夹中所有 File 对象(包括隐藏文件和系统文件)组成的 Files 集合。 object.Files object&n
我是一名优秀的程序员,十分优秀!