我正在尝试创建一个脚本,它会在YouTube频道上传视频时通知我。就像订阅按钮一样
我尝试过的:
我试着去找一个关于这个的文档,在这个过程中也学会了如何在Google Cloud中设置YouTube V3 API,我找到的最接近的库是python-youtube和youtube-channel-subscribe。
我目前的进展:
我试过youtube-channel-subscribe,但问题是它打开浏览器,然后订阅,这不会工作,因为我将在服务器上运行它.我已经看过python-youtube文档,我不认为它有这个功能(我可能是错的)
任何帮助都将不胜感激。
2条答案
按热度按时间g6ll5ycj1#
这可以通过使用2个内置的python库来实现:
requests
和re
。基本上,我们希望监视YouTube频道的最新视频。我们可以得到标题,上传日期和观看计数的任何YouTube频道的最新视频与这几行代码:
输出:
您可以将视频的信息 (相对日期转换为绝对日期) 存储在数据库中,并且每当
info
带有数据库中不存在的标题,或者date
带有从当前日期减去时晚于数据库中的最后日期的时间时,则已上载新视频。更新
YouTube视频的日期格式发生了变化,因此上面的日期正则表达式不再有效,但是
info
仍然包含它。下面是同样获得最新视频网址的版本:
输出:
lzfw57am2#
很简单,
1.查找您要监视的页面。
1.获取它的URL,然后用Python库Beautiful Soup. https://pypi.org/project/beautifulsoup4/抓取它。
1.列表项
1.为该文件的第一个版本创建一个Json文件(您可以使此操作非常简单,只需使用最新视频的名称)。
1.在您喜欢的任何时间间隔,再次调用python scraper进行比较
1.当JSON文件不同时,(如果最新的文件名与原始文件名不相同,则执行x)对Zapier https://zapier.com/进行API调用
1.让Zapier通过api调用在发生变化时向您发送短信。
上面的代码可以直接在文档中找到。如果你想要一个更完整的方法来抓取,这将绕过任何形式的封锁,从客户端网站,我会使用代理链接只是供参考。