scrapy实现对github用户的自动关注

     很无聊恶作剧的想法,刚注册github不久,空空荡荡的,没有关注人,也没有人关注。正好也算是练习python和scrapy了,萌生了想法,批量follow用户,可以从一个明星用户的follower页面开始,批量follow。

      两个知识点,一是登录,二是关注。登录见上篇文章,这里说下关注,依然是采用chrome开发者工具network栏,找post的数据和网址。网址形式为https://github.com/users,post的数据的payload为 

request headers 的Content-Type为multipart/form-data类型,但是scrapy的FormRequest的post类型为application/x-www-form-urlencoded,可见其实现

查了好多资料,断续两三天时间,学习了scrapy  post multipart/form-data类型的方法,首先是要使用 requests_toolbelt库中的 MultipartEncoder类,以实现post的payload。

构建payload:

数据字段为utf8,anthenticity_token,取出网页中的anthenticity_token字段,两个字段构成字典send_data

然后以send_data为参数构建MultipartEncoder对象,这构成了payload内容。然后构建headers,url,具体代码如下

上述既是follow某个用户的具体方法。批量关注github用户,只要对follower页面关注用户批量关注就可以了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 采用scrapy框架来实现,主要有两块,一是实现用户的登录,二是实现对用户的爬取。 首先,用户的登录,采用c...
    bitmote阅读 727评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,914评论 18 139
  • http://192.168.136.131/sqlmap/mysql/get_int.php?id=1 当给sq...
    xuningbo阅读 10,418评论 2 22
  • 目录 查询指定项目属性接口 1. 查询指定项目属性 接口功能 获取制定项目的分类信息 URL http://www...
    逗比punk阅读 108评论 0 0
  • 栖真之地发自简书App 结冰的湖 小片的黄叶和细茎的枯草 被安顿在暂时的寓所 湖面,一枚巨大而新鲜的琥珀 阳光普照...
    桑子简书阅读 237评论 0 1