DIYgod / RSSHub

🧡 Everything is RSSible
https://docs.rsshub.app
MIT License
32.82k stars 7.31k forks source link

本地部署时,可以通过设置密码,抓取自己在Instagram上的所有订阅人 #4574

Closed shawn8888 closed 4 years ago

shawn8888 commented 4 years ago

网站地址

instagram.com

网站描述

在线图片及视频分享的社群应用软件

需要生成什么内容?

所有自己关注用户的内容

额外描述

目前RSSHub已经可以订阅Instagram用户,标签等,但是有两个缺点:

  1. 需要一个用户一个用户的添加。如果订阅人数多,非常麻烦,也不方便RSS阅读
  2. 对非公开用户无法订阅

所以,能不能象Twitter路由一样,可以在本地部署时添加自己的用户名,密码,或者token之类的环境变量,从Instagram抓取所有自己的订阅人信息流。如果能做到象Twitter的“用户关注时间线”路由那样,就完美了!

谢谢!

10362227 commented 4 years ago

IG已经不提供这种api了,只能抓页面,添加cookie免登录。RSSHub不知道有没有人愿意写。不过huginn可以做到,前不久我写的:https://huginnio.herokuapp.com/scenarios/77

shawn8888 commented 4 years ago

IG已经不提供这种api了,只能抓页面,添加cookie免登录。RSSHub不知道有没有人愿意写。不过huginn可以做到,前不久我写的:https://huginnio.herokuapp.com/scenarios/77

膜拜。等我有空尝试一下您写的huginn 还是希望有人写RSSHub路由,会方便很多

shawn8888 commented 4 years ago

IG已经不提供这种api了,只能抓页面,添加cookie免登录。RSSHub不知道有没有人愿意写。不过huginn可以做到,前不久我写的:https://huginnio.herokuapp.com/scenarios/77

下载导入了您写的huginn Scenario,请教Cookie值怎么写?能不能给个sample?谢谢!

Felix2yu commented 4 years ago

@10362227 测试可以获得,非常感谢!

@shawn8888 我用的火狐,请求头里cookie字段都粘进去就行了。类似于: ig_did=x; csrftoken=x; mid=x; rur=x; urlgen=x; shbid=x; shbts=x; ds_user_id=x; sessionid=x

shawn8888 commented 4 years ago

@10362227 大成功!非常感谢! @Felix2yu 也谢谢你的帮助!!!

报告一个bug,期待完美! IG取到11个event,但只有7个被输出到IG 全文。有4个漏了。 image

看了一下,下面三个长的URL都没有进IG全文。还有一个这个 https://www.instagram.com/p/B_f6QyIhzo3 image

shawn8888 commented 4 years ago

issue我就不关了,说不定哪天哪个RSSHub大神写个路由呢? :P

10362227 commented 4 years ago

https://www.instagram.com/p/B_f6QyIhzo3

确实有问题,看看能不能解决

shawn8888 commented 4 years ago

https://www.instagram.com/p/B_f6QyIhzo3

确实有问题,看看能不能解决

再提个小建议,能不能加个链接,转到关注post主的主页? 现在的链接只能指向图片,想要留言,或者互动,只好重新登录IG,不太方便。 这个scenario 这么棒,应该建个git项目,方便issue fix啊 :P

10362227 commented 4 years ago

https://www.instagram.com/p/B_f6QyIhzo3

确实有问题,看看能不能解决

再提个小建议,能不能加个链接,转到关注post主的主页? 现在的链接只能指向图片,想要留言,或者互动,只好重新登录IG,不太方便。 这个scenario 这么棒,应该建个git项目,方便issue fix啊 :P

不太明白,转到关注post主的主页?https://www.instagram.com/scientwehst/ 这样的? 互动的话不是点开链接就可以浏览回复了吗,重新登录不明白。rss很难支持互动吧,rss仅仅只是个xml文件

shawn8888 commented 4 years ago

不太明白,转到关注post主的主页?https://www.instagram.com/scientwehst/ 这样的? 互动的话不是点开链接就可以浏览回复了吗,重新登录不明白。rss很难支持互动吧,rss仅仅只是个xml文件

我指的是RSS里的URL,比如这个: https://www.instagram.com/p/B_f6QyIhzo3 不知道是不是我浏览器的问题,打开之后要么空白,要么指向原贴,但是会马上再自动跳转变成大图,象这样:

image

10362227 commented 4 years ago

这个是你浏览器的问题,链接就是原始的。还有之前那个问题我搞定了,然后你发下那种长链接我,我再看看

shawn8888 commented 4 years ago

这个是你浏览器的问题,链接就是原始的。还有之前那个问题我搞定了,然后你发下那种长链接我,我再看看

https://www.instagram.com/p/B_gfMlelrSZKKignRmxwJfRngMTjzxNQzujVlM0 https://www.instagram.com/p/B_f330plVBfkXgqBoWdZEZqjH_8tJ1uTJZf7U00

shawn8888 commented 4 years ago

链接跳转问题还真是浏览器问题,我把AdGuard关掉就好了!Sorry!

10362227 commented 4 years ago

新Scenario下载:http://209.250.231.104/ig.json 删掉之前的Scenario,再导入,否则容易出问题。 说明几点 1.里面只要有填cookie的地方,都添加cookie,因为你刚刚提供的长链是私密账户,必须关注才可以看。 2.视频预览图有小概率失效的可能,这是IG问题 3.刷新时间默认5分钟,最好别去修改太大,因为是抓的是IG页面,没法抓取到下拉加载的内容,而且IG是按算法排序,不是严格按时间,刷新太慢有可能遗漏 4.cookie是会失效的,可能一个月,半年,一年,反正我几个月了没事。

shawn8888 commented 4 years ago

似乎有问题,删掉重新导入,替换所有cookie(话说变量好象huginn可以传递到下一级吧?这样就不用一个个替换了) 然后只有一个agent有event,其它没有。我还特地把所有的event删除,disable agent,重启huginn docker,再reenable all agents 这么复杂的的流程,其实应该用RSSHub的javascript更容易写也更容易调试吧? image

10362227 commented 4 years ago

似乎有问题,删掉重新导入,替换所有cookie(话说变量好象huginn可以传递到下一级吧?这样就不用一个个替换了) 然后只有一个agent有event,其它没有。我还特地把所有的event删除,disable agent,重启huginn docker,再reenable all agents 这么复杂的的流程,其实应该用RSSHub的javascript更容易写也更容易调试吧? image

没有理由啊,我用的就是这个,正常运行(cookie貌似没法传递)。你试试在heroku安装,huginn本身有很多问题,我感觉在heroku上运行很稳。如果只是做要求很简单的rss,就是标题、链接、一张图,那就不复杂了。

10362227 commented 4 years ago

你先别动,如果几小时还是没有任务传递,那就是有问题。它的原理是WebsiteAgent和WebsiteAgent,有内容变动才会传递,有时候任务多会卡住。

10362227 commented 4 years ago

我刚刚更新了一下,修复了bug,代码应该没什么问题。IG的不同情况太多了,而且根本无规律,光那个用户名,总会出现各种各样的情况,我降低了一点要求,应该正常了。私密账户就不知道了,我没法测

shawn8888 commented 4 years ago

今天重新下载了.json文件,又删掉,重装,重设cookie,和上面一样,只有第一个agent有数据,其它都没有。应该是第二个agent的问题。而且我的IG里private很少,上面这11个全是public的。event如下:

https://www.instagram.com/p/B_gfMlelrSZKKignRmxwJfRngMTjzxNQzujVlM0
https://www.instagram.com/p/B_gw8hEBNZN
https://www.instagram.com/p/B_hEogvIyQu
https://www.instagram.com/p/B_hIcW6KKYc
https://www.instagram.com/p/B_hMu24gH2w
https://www.instagram.com/p/B_hZEYHCY5k
https://www.instagram.com/p/B_hdtUPJUmJ
https://www.instagram.com/p/B_hiGAWFEOe
https://www.instagram.com/p/B_hkxs_lKWq
https://www.instagram.com/p/B_hn72NlbY_CvcbWXzPtAJznV4X5SMaNwMw1QQ0
https://www.instagram.com/p/B_hofgChmcA
10362227 commented 4 years ago

代码没有问题, 我刚刚测试了。你可以在“IG 全文”中把{{link}}换成https://www.instagram.com/p/B_gw8hEBNZN Dry Run测试 image image

刚刚测试了隐私账户,又有一个地方不相通,我改改

shawn8888 commented 4 years ago

刚刚测试了隐私账户,又有一个地方不相通,我改改 可以email私聊吗?谢谢! shawn_8888@msn.com