V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dongleeafar
V2EX  ›  程序员

写了一个帮助你定向推广 github 仓库的 github 仓库

  •  
  •   dongleeafar · 2020-04-12 19:22:21 +08:00 · 1651 次点击
    这是一个创建于 1686 天前的主题,其中的信息可能已经有所发展或是发生改变。

    仓库名:promote_github_repo

    无法放链接,只能放仓库名 orz...

    欢迎各位 star 和提 issues!

    功能

    爬取相似仓库 star 用户的邮箱,并批量发送要推广的 repo 信息

    这里假定爬取的仓库用户重叠度与你要推广的仓库较高,即可实现定向推广的作用!

    声明与可能带来的争议

    首先声明我还没用过这个策略做推广,想先向各位网友探讨一下这样做是否合适

    也就是这样算不算做垃圾邮件

    我的观点:因为我爬取的都是 star 相似仓库的用户邮箱,也就是这封邮件或多或少对他都是有一定的价值,
    最关键的一点是我爬取的都是 github 主页提供了邮箱的用户,而不是从他仓库的提交记录得到的。
    用户可以选择是否在主页显示邮箱,如果他不想被打扰,那么他就不会选择放邮箱上去,爬取到的这部分用户是愿意你通过邮箱联系他的。

    我的观点也不一定正确,欢迎大家讨论!

    实现方法介绍

    爬虫部分

    使用 requests 库爬取界面,xpath 解析

    1. 爬取指定仓库 star 用户界面,获取所有的用户 id
    2. 登录 github,并保存 cookie,这样接下来进入个人主页才会显示邮箱
    3. 进入用户的个人主页爬取邮箱

    邮箱部分

    使用 SMTP 服务来发送推广邮件

    7 条回复    2020-04-12 21:36:46 +08:00
    dongleeafar
        1
    dongleeafar  
    OP
       2020-04-12 19:24:22 +08:00
    有老哥有权限的话可以回复帮忙放下链接呀,谢谢啦!
    oott123
        2
    oott123  
       2020-04-12 20:22:13 +08:00
    某种意义上没经过用户订阅的邮件就应该算垃圾邮件了
    smilenceX
        3
    smilenceX  
       2020-04-12 20:28:32 +08:00   ❤️ 8
    所有给我发垃圾邮件人都认为他们的邮件对我有用。
    我放邮箱是为了让人类在有需要的时候找到我,而不是接收爬虫发来的垃圾邮件。
    jugelizi
        4
    jugelizi  
       2020-04-12 21:01:30 +08:00
    所以你这个是个推广
    izzy27
        5
    izzy27  
       2020-04-12 21:19:44 +08:00
    看了下代码,感觉这样做问题在于别人可能不想收到爬虫发的推广邮件
    zhangpeter
        6
    zhangpeter  
       2020-04-12 21:20:27 +08:00
    如果有人这么推广他的项目,我会去他的仓库那里骂他
    dongleeafar
        7
    dongleeafar  
    OP
       2020-04-12 21:36:46 +08:00
    看了下各位老哥的回答,看起来大家都对这种方式比较反感啊,我还是不用这个东西了,免得被骂 orz
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   942 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 20:58 · PVG 04:58 · LAX 12:58 · JFK 15:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.