
InstaPy 如何用 set_dont_like 按标签规则排除帖子【免费下载链接】InstaPy Instagram Bot - Tool for automated Instagram interactions项目地址: https://gitcode.com/GitHub_Trending/in/InstaPy当 InstaPy 按标签hashtag批量互动时经常遇到不想点赞的帖子——文案里挂着竞品、敏感或无关标签。session.set_dont_like就是用来做这种排除的InstaPy 会检查帖子的描述和发布者owner评论中的 hashtag只要命中你配置的排除规则该帖子就不会被点赞。整个过程只改一行配置代码配合like_by_tags等互动动作即可生效。配置位置在 session 上调用 set_dont_likeset_dont_like是InstaPysession 对象的方法实现见 instapy/instapy.py参数是一个字符串列表按正常流程创建并登录 session 之后调用即可安装与登录流程见 docs/home.md。文档中的标准示例出自 docs/settings.md “Restricting Likes” 一节session.set_dont_like([#exactmatch, [startswith, ]endswith, broadmatch])注意参数必须是list类型。源码中对非 list 输入会打印警告Unable to use your set_dont_like configuration!并把 session 置为中止状态后续配置调用会直接失效。另外如果你完全不配置InstaPy 也有默认排除列表[sex, nsfw]见 instapy/instapy.py。调用set_dont_like时传入的是替换后的完整列表而不是追加想保留默认项需要自己一并写上。四种标签匹配规则set_dont_like列表中每个字符串的写法决定匹配方式共 4 种文档原文示例写法规则文档示例#开头只匹配完全相同的 hashtag#cat匹配#cat不匹配#catpic[开头匹配以该词开头的所有 hashtag[cat匹配#catpic、#caturday]开头匹配以该词结尾的所有 hashtag]cat匹配#mycat、#instacat无前缀匹配包含该词的任意位置 hashtagcat匹配#cat、#mycat、#caturday、#rainingcatsanddogs四种规则可以混在同一个列表里。比如只想排除完全等于#giveaway的帖子、同时排除一切以#promo开头的标签可以写成session.set_dont_like([#giveaway, [promo])排除规则的检查范围与生效范围理解排除逻辑的边界主要来自 docs/settings.md 的说明检查文本.set_dont_like搜索的是帖子描述description和发布者评论owner comments中的 hashtag命中其中任意一条规则就跳过该图片的点赞。只影响点赞源码 docstring 明确写的是 “the image wont be liked but user still might be unfollowed”——帖子不会被赞但该用户仍可能因其他动作如取关被处理。匹配实现运行时每条规则会被编译成正则表达式再对帖子文本做匹配instapy/like_util.py例如#cat会被处理为必须独占一个 hashtag 的完整词避免误伤#catpic这类包含关系。一个实际可用的组合示例按标签点赞的同时排除敏感与竞品标签session.set_dont_like([[nsfw, giveaway, #compete, promo2024]) session.like_by_tags([natgeo, world], amount10)like_by_tags的用法与参数见 docs/actions.md。可选用 set_ignore_if_contains 反向放行如果排除规则误伤了某些你想保留的帖子set_ignore_if_contains可以在描述包含指定词时直接放行、忽略 dont_like 判断docs/settings.md “Ignoring Restrictions” 一节# will ignore the dont like if the description contains # one of the given words session.set_ignore_if_contains([glutenfree, french, tasty])源码中该检查发生在 dont_like 匹配之前instapy/like_util.py描述命中任一放行词时后续 dont_like 规则不会再触发。运行后如何确认排除生效运行 session 观察日志即可判断。check_link在检查每张帖子时会打印Image from:、Image link:、Description:三行信息当描述命中排除规则时帖子会以Inappropriate! ~ contains ...的标记被判为不适宜并跳过消息格式见 instapy/like_util.py。因此验证方法是配置好set_dont_like后运行一个小的like_by_tags任务如amount10在日志中找到Description:行确认目标帖子的描述里确实含有被排除的标签确认该帖子出现在 “Inappropriate” 类提示中、且没有被点赞而同类但未命中标签的帖子正常被互动。两个容易踩的坑传入的排除列表不是list会直接中止整个 session见开头的警告日志排除列表是整体替换配置后原有的默认排除项[sex, nsfw]不再存在需要保留时自行写入列表。限制set_dont_like只解决“帖子含指定标签时不点赞”这一件事如果目的是完全不与某些用户互动应使用set_ignore_users按用户名等其它设置。检查范围限定在帖子描述与发布者评论中的 hashtag位置location文字不参与 dont_like 匹配。该配置不阻止取关动作命中排除帖子的用户仍可能出现在 unfollow 流程中。【免费下载链接】InstaPy Instagram Bot - Tool for automated Instagram interactions项目地址: https://gitcode.com/GitHub_Trending/in/InstaPy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考