
InstaPy 如何用 set_skip_users 按账号类型与 bio 关键词过滤目标用户【免费下载链接】InstaPy Instagram Bot - Tool for automated Instagram interactions项目地址: https://gitcode.com/GitHub_Trending/in/InstaPy在运行 InstaPy 自动点赞、关注等任务时抓取到的目标用户里经常混着私号、商业账号、没有头像的空号或者 bio 里明显不属于目标人群的账号。session.set_skip_users(...)就是在执行具体动作如like_by_tags、follow_by_tags之前按账号类型私密/公开、是否无头像、商业号及其分类和 bio 关键词把不符合条件的用户跳过只留下符合筛选条件的用户继续交互。适用前提已按 docs/home.md 安装 InstaPypip install instapy系统若使用 Python 3 则用pip3并有一个可运行的quickstart脚本脚本里通过InstaPy(username..., password...)传入运行账号。以下所有session均指该脚本中创建并配置好的会话对象。在 quickstart 脚本中配置 set_skip_usersset_skip_users是会话级配置需要在调用具体动作like_by_tags等之前设置。完整的参数组合在 docs/settings.md 的 Skipping user 一节有说明方法签名可对照 instapy/instapy.pysession.set_skip_users(skip_privateTrue, private_percentage100, skip_no_profile_picFalse, no_profile_pic_percentage100, skip_businessFalse, skip_non_businessFalse, business_percentage100, skip_business_categories[], dont_skip_business_categories[], skip_bio_keyword[], mandatory_bio_keywords[], skip_publicFalse, public_percentage0)不需要一次写全所有参数只传要开启的开关即可例如只跳过私密账号session.set_skip_users(skip_privateTrue, private_percentage100)各参数对应的过滤行为参数作用skip_privateprivate_percentage跳过私密账号。private_percentage100表示始终跳过private_percentage0表示从不跳过此时应把skip_private设为False。注意跳过私密账号是默认行为即使已被运行账号关注也会跳过skip_publicpublic_percentage跳过公开账号。public_percentage100始终跳过0从不跳过应配合skip_publicFalseskip_no_profile_picno_profile_pic_percentage跳过还没有上传头像的用户skip_businessbusiness_percentage跳过已开启商业账号的用户。business_percentage100始终跳过0从不跳过skip_non_business与skip_business一起使用时同时跳过所有非商业账号保留例外列表内的商业号见下skip_business_categories只跳过列表中商业分类的账号可加多个分类dont_skip_business_categories跳过列表中以外的所有商业号即列表内的分类例外保留组合使用商业分类的典型写法# 只跳过给定商业分类的账号 session.set_skip_users(skip_privateTrue, skip_no_profile_picTrue, skip_businessTrue, skip_business_categories[Creators Celebrities]) # 跳过所有商业号但保留列表内分类 session.set_skip_users(skip_privateTrue, skip_no_profile_picTrue, skip_businessTrue, dont_skip_business_categories[Creators Celebrities])两个必须知道的限制直接来自文档business_percentage只在没有提供skip_business_categories或dont_skip_business_categories时才生效若同时提供了skip_business_categories和dont_skip_business_categoriesInstaPy 只会跳过skip_business_categories列表中的商业号。按 bio 关键词过滤bio 相关有两个参数skip_bio_keyword黑名单bio 中出现任一关键词就跳过和mandatory_bio_keywords白名单不满足必填词条件就跳过。文档给出的示例session.set_skip_users(skip_bio_keyword[lifestyle], mandatory_bio_keywords[art, photography])其效果bio 里含 lifestyle 的用户会被跳过bio 或用户名中不含 art 或 photography 的用户也会被跳过。mandatory_bio_keywords支持嵌套列表来表达复杂的 AND/OR 条件规则与 Mandatory Words 一节相同简单列表内是 OR 关系嵌套列表时顶层为 ORAND/OR 随嵌套层级交替。例如session.set_skip_users(mandatory_bio_keywords[high_mountain, [high, mountain]]) # high_mountain 或 high 与 mountain 同时出现二者满足其一即可保留该用户运行并验证过滤是否生效配置好后按正常方式在 quickstart 脚本里追加目标动作并运行。例如跳过无头像用户、bio 带 lifestyle 的用户后按标签点赞session.set_skip_users(skip_no_profile_picTrue, skip_privateTrue, skip_bio_keyword[lifestyle]) session.set_do_follow(enabledTrue, percentage10, times2) session.like_by_tags([natgeo, world], amount10)python quickstart.pyInstaPy 会打开浏览器开始工作。判断某个用户是否被过滤可以看日志里逐用户的检查消息——这些消息由 instapy/util.py 的用户校验逻辑输出命中 bio 黑名单时输出形如{username} has a bio keyword of {keyword}, by default skip的记录必填 bio 词不满足时输出Mandatory bio keywords not found所有检查都通过时该用户被记为Valid user才会进入后续点赞/关注流程。因此验证方式很直接跑一小批量如amount10在日志中确认目标用户要么出现上述跳过消息、要么被记为Valid user后正常交互若预期被跳过的用户仍被交互先检查set_skip_users是否在对应动作like_by_tags等之前被调用以及百分比参数是否被设成了0。限制与说明bio 检查只在该次运行中读取到的 bio 上进行且skip_bio_keyword的匹配不区分大小写源码中对 bio 做了lower()处理见 instapy/util.py。若用户 bio 读取失败校验会记录could not get user bio一类错误该用户按未通过处理不会继续交互。除了内联列表set_skip_users也出现在target_list支持的函数列表中docs/settings.md Target Lists 一节可以从文本文件解析目标清单后配合使用格式为每行一个条目的.txt文件。过滤只决定跳过谁不决定做什么。点赞数量、关注比例、行为配额set_quota_supervisor等仍需在 quickstart 脚本中单独配置。下一步如果需要在不同运行之间避免重复接触同一批用户可参考 docs/settings.md 的 Blacklist Campaignset_blacklist配额与休眠控制则见同文档的 Quota Supervisor 一节。【免费下载链接】InstaPy Instagram Bot - Tool for automated Instagram interactions项目地址: https://gitcode.com/GitHub_Trending/in/InstaPy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考