我正在尝试从 Netflix 网址获取电视节目(剧集/季节)/电影的名称。有没有办法使用 requests
和 urllib
?我想我需要 API 密钥和秘密。
这就是我要做的。
例如,我有Z Nation的这个URL。
url = "https://www.netflix.com/gb/title/80008434"
url_data = urlparse.urlparse(url)
query = urlparse.parse_qs(url_data.query)
id = query["v"][0]
ID应该给我80008434
netflixurl = ''
r = requests.get(netflixurl)
js = r.json()
item = js[""]
项目应该给我 Z 国家第 3 季。(或任何季节/剧集网址是网址)使用"NetflixAPIV2"的pyflix2
API。
我应该怎么做?请帮忙!
编辑:我将其用于YouTube。网飞也有类似的事情吗?
import lxml
from lxml import etree
import urllib
youtube = etree.HTML(urllib.urlopen("https://www.youtube.com/watch?v=L93-7vRfxNs").read())
video_title = youtube.xpath("//span[@id='eow-title']/@title")
song = ''.join(video_title)
结果 : 傻朋克 - 空气动力学
可悲的是,Netflix已经停止使用其公共API,并且不接受任何新的开发人员。
您可以查看Netflix轮盘赌API,这是一个非官方API,可让您在Netflix上运行查询。您可以将该 API 与urllib
或requests
结合使用,并获得所需的结果。
除此之外,您还可以使用一般的网络抓取,使用美丽汤和请求。但是不建议这样做,因为它会消耗大量的带宽来抓取所有目录。
有一个你可以订阅由uNoGS开发的API。 缺点是您可以拥有一个免费帐户,但必须提交您的信用卡详细信息,因为如果您每月收到超过 100 个请求,您将被收取费用。 不用说,警钟响了。因此,我正在考虑建立自己的,并且处于非常早期的阶段。看到一些回复后,我只是想我会把它扔在那里,机器人.txt文件显示/Browse 子目录显示为"允许"。通常在这样的网站上,他们规定他们允许信誉良好的搜索引擎能够抓取。 然而,没有这样的条款,因此,正如到目前为止所讨论的,从合法性来看,抓取浏览部分似乎既合法又合乎道德。 话虽如此,即使没有规定"抓取延迟",从道德上讲,如果您确实成功地使请求正常工作,我建议您放置一个。
所以我为这个确切的东西写了一些代码,因为很多网站都为美国或其他地区提供了代码,无法翻译成适用于我的 Netflix 的确切答案。
这个使用硒,但下载和理解我编写的代码应该不难。https://github.com/Eglis05/netflix-selenium 你可以看看它,并报告任何你不喜欢的东西。:)