devome / blog

个人网站的源码
https://evine.win
0 stars 0 forks source link

通过浏览器插件Automa自动向IYUUPlus更新PT站的Cookie信息 #92

Open devome opened 2 months ago

devome commented 2 months ago

https://evine.win/p/auto-update-pt-cookies-in-iyuuplus/

申明 转载需注明本文链接及作者。 前言 玩PT的能自动化的就得自动化,顾名思义,看本文标题就知道:通过浏览器插件Automa自动向IYUUPlus

youngestdriver commented 2 months ago

👍

byangmath commented 2 months ago

请教下,我用Chrome浏览器,运行成功,但发现获取cookie那一步得到的是:"cookie": []。这是咋回事。pt站点是登陆的

devome commented 2 months ago

@byangmath 检查下工作流和表格有没有关联,以及“插入数据”节点和表格字段有没有关联,在上文中已经提及过了。

byangmath commented 2 months ago

关联上了,也按照你“某些用户可能存在的问题1”修改了“插入数据”,但获取cookie步骤就是获取不到cookie,下面是该步的日志 { "referenceData": { "loopData": {}, "variables": { "$$iyuuplus_url": "http://", "$$sites": [ { "id": "7", "site": "hdhome", "url": "https://", "key_content": "c_secure_uid" }, { "id": "4", "site": "hdsky", "url": "https://", "key_content": "c_secure_uid" }, { "id": "29", "site": "oshen", "url": "https://", "key_content": "c_secure_uid" } ], "cookie": [] }, "activeTabUrl": "", "prevBlockData": "" }, "replacedValue": { "{{ variables.$$sites.[loopData.Atxo9S.$index].url }}": "https://", "[loopData.Atxo9S.$index]": "0" } }

devome commented 2 months ago

@byangmath 还有一些可能是你需要授予automa读写cookie的权限,以及url只能是形如 https://www.baidu.com 这样,不能带子路径也不能以/结尾,你也可以检查一下每一步,看看有没有该关联的没有关联。正常情况下,会在存储->表格->cookie中保留最后一个站点的cookie信息,如果没有,就是表格和工作流没有关联上。

byangmath commented 2 months ago

我发现,sites最后一个站点由于连接太差导致登录失败,又因为表格中cookie只保留最后一个站点的,所以表格中没有数据,但前两个是登陆成功的,为啥他们在iyuuplus里面没有更新cookie呢?我把sites中最后一个站点移到了第一个,表格中有cookie数据了,成功获取cookie的站点在iyuuplus里面更新了,连接太差而导致登录失败的站点没有更新。是否是设置了最后一个站点没有获取到cookie就会不进行一些数据操作?

devome commented 2 months ago

@byangmath 理论上提取cookie时不会访问网站,而是直接从浏览器缓存中提取的(只要该网站已经登陆好了)。

byangmath commented 2 months ago

@devome soga。根据我上述验证的结果,我怀疑流程有这么一个逻辑:若是最后一个cookie找不到,那么前面找到的cookie也不会保存。当然很可能我是错的,但我暂时想不出其他原因

devome commented 2 months ago

不会的,向iyuu提交一个站的cookie后才启动下一个站,你看每个工作节点的注释就明白了,没有提取到cookie不仅不会向iyuu提交,而且还会向你发出通知。我现在觉得可能单纯的只是因为你没有刷新iyuu网页,导致没有看到本已经更新的cookie。

byangmath commented 2 months ago

我刷新过网页的,不过并没有看到变化。

devome commented 2 months ago

@byangmath 你看下每个工作节点的注释就会明白,没有提取到cookie不仅不会向iyuu提交,而且还会向你发出通知。

byangmath commented 2 months ago

嗯嗯,所以我现在不太理解我之前为啥不行。你说的操作我都试过。不管怎么样,现在能用了,不管啦

hotoliao commented 1 month ago

@byangmath 我发现,sites最后一个站点由于连接太差导致登录失败,又因为表格中cookie只保留最后一个站点的,所以表格中没有数据,但前两个是登陆成功的,为啥他们在iyuuplus里面没有更新cookie呢?我把sites中最后一个站点移到了第一个,表格中有cookie数据了,成功获取cookie的站点在iyuuplus里面更新了,连接太差而导致登录失败的站点没有更新。是否是设置了最后一个站点没有获取到cookie就会不进行一些数据操作?

同样的情况,将另外一个站点移到最后,成功了

kiririto commented 3 weeks ago

23:37:05 (0s) 触发器 23:37:05 (0s) 循环数据 启动1级循环,即全局变量$$sites总共的站点数量。 23:37:05 (0s) 删除数据 清空记录 23:37:05 (0s) Cookie 获取Cookie 没有执行此操作的 "cookies" 权限

你好,请教下全都设置完后执行之后提示没有权限,请问下会是什么原因呢?

不过第一步的“通过以上两种方式任何一种导入时,Automa都会弹出权限需求”我貌似没见到权限申请

kiririto commented 3 weeks ago

23:50:16 (0s) 触发器 23:50:16 (0s) 循环数据 启动1级循环,即全局变量$$sites总共的站点数量。 23:50:16 (0s) 删除数据 清空记录 23:50:16 (0s) Cookie 获取Cookie 没有执行此操作的 "cookies" 权限 23:50:16 (0s) 循环数据 启动2级循环,即当前站点的Cookie的全部字段,每个站点的Cookie的字段数量不一样。 要循环的数据无效 23:50:16 (0s) 插入数据 将每个cookie字段写入表中 23:50:16 (0s) 循环断点 nUsAXX Can't find a loop with "nUsAXX" loop id 23:50:16 (0s) 插入数据 将Cookie全部字段组合成一个字符串,并写入表的最后一行。 23:50:16 (0s) 插入数据 将前一步组合而成的字符串中的逗号替换为分号加空格,这才是可以后续可以使用的Cookie的形式。 23:50:16 (0s) 条件 检查前一步组合而成的字符串中是否含有在$$sites全局变量中设置的key_content,来判断是否已成功登陆。注意,这种判断并不完全准确,仅供参考。 23:50:16 (0s) 通知 如果没有登陆则向操作系统发送通知 23:50:16 (0s) 延迟 23:50:17 (0s) 循环断点 Atxo9S 0s 完成

设置里点了出错也继续执行的话就有这个记录,不知道算是成功了没有

devome commented 3 weeks ago

@kiririto 没有授予权限无法运行。

kiririto commented 3 weeks ago

@devome @kiririto 没有授予权限无法运行。

我后来在设置里授予权限了,还是提示没有权限,是在设置里面授予吗?

kiririto commented 3 weeks ago

image 授予之后,貌似设置里面没有权限选项了

devome commented 3 weeks ago

你可以点进编辑出错的节点,里面有授予权限的按钮。@kiririto

kiririto commented 3 weeks ago

@devome 你可以点进编辑出错的节点,里面有授予权限的按钮。@kiririto

可以了!非常感谢!