【自动化实战(二)重塑抖音个性化推荐!自动化清空关注列表

2023年 8月 14日 27.7k 0

前言

本篇博文是 《Selenium IDE 自动化实战案例》 系列的第二篇博文,主要内容是通过 Selenium IDE 编写自动化取关脚本,清空关注列表,重塑抖音个性化推荐,往期系列文章请访问博主的 自动化实战案例 专栏,博文中的所有代码全部收集在博主的 GitHub 仓库 中;

严正声明:本博文所讨论的技术仅用于研究学习,任何个人、团体、组织不得用于非法目的,违法犯罪必将受到法律的严厉制裁。

展示

运行结果.gif

可能有些读者会有疑问,为什么要这么麻烦,直接对 API 接口下手不是更快更方便吗?

emm,如果是以超高频率去请求的话,轻则 IP 被关入小黑屋,重则抖音号被永久封禁,但是自己又不知道需要将速度控制在多少以内,因此,以这种模拟点击的方式去实现取关反而效果更好。

背景

这个自动化脚本的背景大概就是,有一位粉丝对于抖音现在推荐给他的视频不太满意,因此他想清空一下关注列表,以此来重塑一下他抖音的个性化推荐算法,因此,用了 Selenium IDE 完成了这次的需求。

1.jpg

接下来,博主将详细讲解这一实现过程。

实现

首先,需要来到个人主页,点击 “我的”,然后再点击关注,就会弹出关注列表:

image.png

转换成 Selenium IDE 指令则需要两个步骤即可:

  • 由于 www.douyin.com/user/self?s… 能够直接到达个人主页的 “我的”,因此直接使用 open 指令:

    Command Target
    open www.douyin.com/user/self?s…
  • 点击 关注 以实现关注列表的弹出,定位器可以通过 idcssxpath 等方式来实现:

    Command Target
    click css=.AULCPX_8:nth-child(1) > .TxoC9G6_
  • Selenium IDE 指令界面:

    image.png

    接下来就是取关操作,只要点击红框中的按钮即可:

    image.png

    因此转换成 Selenium IDE 指令只需要一个步骤:

    Command Target
    click css=.vcEWxPjN:nth-child(1) .B10aL8VQ > .cNFB52sk

    Selenium IDE 指令界面:

    image.png

    优化

    由于上述内容是取关一个博主,当我们要进行批量取关时,就需要用到循环了。

    这里的话,用的是 times,因为关注个数是可知的,当然也能直接获取这个元素的值,不过考虑到不要短时间内过于频繁的请求,因此就设定了一定的循坏次数:

    image.png

    需要注意的是,取关 clickcss 值也要跟着改变,因为之前的值是固定,现在要将 1 -> i,即 css=.vcEWxPjN:nth-child(${i}) .B10aL8VQ > .cNFB52sk

    以下是循环执行了一次的运行结果:

    image.png

    转换成 Python 代码如下所示:

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    
    
    class Test():
      def setup_method(self, method):
        self.driver = webdriver.Chrome()
        self.vars = {}
      
      def teardown_method(self, method):
        self.driver.quit()
      
      def test_(self):
        self.driver.get("https://www.douyin.com/user/self?showTab=like")
        self.driver.find_element(By.CSS_SELECTOR, ".AULCPX_8:nth-child(1) > .TxoC9G6_").click()
        self.vars["i"] = self.driver.execute_script("return 1")
        for cnt in range(0, 50):
          self.driver.find_element(By.CSS_SELECTOR, '.vcEWxPjN:nth-child(self.vars["i"]) .B10aL8VQ > .cNFB52sk').click()
          self.vars["i"] = self.driver.execute_script("return arguments[0] + 3", self.vars["i"])
    

    后记

    通过使用 Selenium IDE 编写的自动化取关脚本,我们成功地帮助粉丝清空了抖音的关注列表。相信在之后,粉丝能够更好地享受到抖音带来的个性化推荐内容,获得更好的使用体验。

    以上就是 重塑抖音个性化推荐!自动化清空关注列表 的所有内容了,希望本篇博文对大家有所帮助!

    严正声明:本博文所讨论的技术仅用于研究学习,任何个人、团体、组织不得用于非法目的,违法犯罪必将受到法律的严厉制裁。

    📝 上篇精讲:(一)以毒攻毒:开发自动化评论脚本回敬 “引流评论”

    💖 我是 𝓼𝓲𝓭𝓲𝓸𝓽,期待你的关注,创作不易,请多多支持;

    👍 公众号:sidiot的技术驿站;

    🔥 系列专栏:Selenium IDE 自动化实战案例

    相关文章

    JavaScript2024新功能:Object.groupBy、正则表达式v标志
    PHP trim 函数对多字节字符的使用和限制
    新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
    使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
    为React 19做准备:WordPress 6.6用户指南
    如何删除WordPress中的所有评论

    发布评论