从vine中提取数据,代替api
Presser的Python项目详细描述
重要更新0.1.8
vine已经改变了他们的视频url结构,所以现在url作为列表传入。
所以,如果您使用的是“videourl”键,则在新结构中获取等效的url。
# You'll need to instead of going to.vine["videoUrl"]# You'll need to go tovine["videoUrls"][0]["videoUrl"]
这是一个简单的库,试图从给定的vine.co url中提取vine的数据。它有点粗糙,准备好了,而且考虑到viNe可以随时更改它们的页面设计,不能保证工作正常。
您需要注意presserjavascriptparseerror,因为这可能表明情况就是这样。
您将需要安装node,它会对javascript进行评估,以获得更稳定的javascript数据提取。我正在寻找一个可行的替代方案,使包不会依赖于节点,但到目前为止,我还没有找到一个可行的替代方案。
但是,下面是示例用法:
frompresser.presserimportPresserpress=Presser()#For a vine idvine=press.get_data_for_vine_id("OBiwWuBm0Eg")#For a vine urlvine=press.get_data_for_vine_from_url("https://vine.co/v/OBiwWuBm0Eg")vine.keys()vine["avatarUrl"]
警告
vine不允许抓取,因此请不要以自动方式使用它,但是如果您的工作流简化并加快了用户转到url并手动提取数据的工作流,则应该没问题。
如果您试图在短时间内进行大量viNe URL提取,那么您可能会惹恼viNe。请不要这样做。