const puppeteer = require('puppeteer');
const dely = ms => new Promise(res=> setTimeout(res,ms));(async () => {let pageIndex = 324const browser = await puppeteer.launch({// 想要代码运的好,还得首选金丝雀// args: ['--no-sandbox', '--disable-setuid-sandbox'],"executablePath": "C:/Users/33318/AppData/Local/Google/Chrome SxS/Application/chrome.exe",timeout: 0,// headless: false,slowMo: 1,});const page = await browser.newPage();await page.setViewport({width: 1600,height: 0,});console.log('设置窗口大小成功');await page.goto(`https://github.com/KevinHock?page=${pageIndex}&tab=following`);console.log(`去到:https://github.com/KevinHock?page=${pageIndex}&tab=following`);const btns = await page.$('.text-bold.text-white.no-underline')btns.click()await page.waitFor('input[name=login]');await page.waitFor('input[name=password]');const name = await page.$('input[name=login]');const password = await page.$('input[name=password]');await name.type('你的账号');await password.type('你的密码');console.log(`成功输入账号密码`);await page.keyboard.press('Enter');await page.waitFor('.UnderlineNav.user-profile-nav.js-sticky.top-0');// debug tools// await page.evaluate(() => {//   window.addEventListener('mousemove', (e) => {//     try {//       const div = document.createElement('div');//       div.style.width = '5px';//       div.style.height = '5px';//       div.style.borderRadius = '50%';//       div.style.backgroundColor = 'red';//       div.style.position = 'absolute';//       div.style.left = `${e.x + 5}px`;//       div.style.top = `${e.y + 5}px`;//       div.style.zIndex = '99999';//       document.body.appendChild(div);//     } catch (err) {//       console.error(err);//     }//   });// });// back to gitterawait page.setViewport({width: 1000,height: 800,});console.log(`重新设置窗口大小`);for (let i = 0; i < 100000; i++) {_btns = await page.$$('.btn.btn-sm.js-toggler-target')for (let i = 0; i < _btns.length; i++) {if(i>1 && i%2==0){console.log(`当前页面第${i}条,当前是第${pageIndex}页`);await dely(3000)await _btns[i] && _btns[i].click()}}await page.goto(`https://github.com/KevinHock?page=${pageIndex++}&tab=following`);console.log(`去到:https://github.com/KevinHock?page=${pageIndex}&tab=following`);console.log(`第${pageIndex}页`);}await dely(3000)})()
复制代码

也可以挂自己服务器上面,跑一个星期估计~~被封号~~

不过这哥们没事,我觉得我也应该没事,顺带说一句,玩GitHub还得多follower他人,别人才知道你,对不,多看看别人的项目,偶尔也被惊艳到。

顺便安利chrome canary,超棒的浏览器,感觉比chromium要强

一段可以无限follow他人的代码相关推荐

  1. 旋转360 css 动画效果,使用CSS3动画属性实现360°无限循环旋转【代码片段】

    使用CSS3的animation动画属性实现360°无限循环旋转. 代码片段:   //图片路径自定义 CSS样式书写如下: #change{ position:absolute; right:200 ...

  2. 百度搜索引擎提供了一段嵌入到页面中的代码

    百度搜索引擎提供了一段嵌入到页面中的代码 <form action="http://www.baidu.com/baidu" target="_blank" ...

  3. 一段动态生成表格的JSP代码讲解

    一段动态生成表格的JSP代码讲解 <table border="1" width="600px" align="center"> ...

  4. 中动态路径加载_GOT段在linux系统中实现代码动态加载的作用和其他段的说明

    上一节我们看到,当程序想调用系统函数时,在编译阶段无法确认被调用函数所在的虚拟地址.因此必须有机制让程序在运行过程中,在调用系统API的时候有办法去确定所调用的系统函数对应的入口地址,这就是代码运行时 ...

  5. 一段比较经典的多线程学习代码

    一段比较经典的多线程学习代码. 1.用到了多线程的同步问题. 2.用到了多线程的顺序问题. 如果有兴趣的请仔细阅读下面的代码.注意其中代码段的顺序,思考一下,这些代码的顺序能否互相调换,为什么?这应该 ...

  6. php文字红色代码,IOS_IOS中一段文字设置多种字体颜色代码,给定range和需要设置的颜色, - phpStudy...

    IOS中一段文字设置多种字体颜色代码 给定range和需要设置的颜色,就可以给一段文字设置多种不同的字体颜色,使用方法如下: [self fuwenbenLabel:contentLabel Font ...

  7. 实现了html实现网页无限下滑,10行代码实现页面无限滚动

    背景: 由于网页的执基接我果控近础收们,制近础收们,制近础收行都是单线程的,在JS执行的过程中,页面会呈现阻塞状态.因此,如果JS处理的数据量过大,过程复杂,可能会造成页面的卡顿.传统的数据展现都以分 ...

  8. 一段让人瑟瑟发抖的ABAP代码

    昨天11月1日是万圣节,Jerry在继续忙着调研SAP Commerce Cloud里的产品主数据管理.晚上回家到SAP国外的社交媒体上一看,好热闹啊.国外的SAP从业者们纷纷以各种各样的方式庆祝万圣 ...

  9. 一段挂起进程中所有线程的代码

    今天看书核心编程看到第7章,中的一段代码很有意思,win7下对记事本进程进行测试,可以挂起,挺有意思的 //windows核心编程 第5版中的一段代码 /* 函数功能:挂起进程中的所有线程 参数1:进 ...

最新文章

  1. 本地jar文件中搜索class
  2. Android使用RxJava+Retrofit2+Okhttp+MVP练习的APP
  3. 网络发展的模式之一:新功能在应用系统涌现,然后逐渐迁移到基础设施
  4. python 100题_python3.0练习100题——001
  5. ZK的实际应用:MVVM –表单绑定
  6. 任尔东西南北风(洛谷P2689题题解,Java语言描述)
  7. springboot 集成mybatis_SpringBoot快速集成Mybatis并轻松上手调试教程,请查收!
  8. python 获取运行文件的路径
  9. net异步线程获取返回值的三种方式
  10. 莽荒天下:玩家闯昆仑插旗邀战,第5张照片亮了
  11. 视频教程-毕业设计精品课之基于ASP.NET旅游网站源码实战讲解(带房屋互租模块)-.NET
  12. 长期大量收售通信 联通 移动 电信 工程各种型号光缆
  13. lua——牛牛牌型处理相关算法(下)——牌型比较
  14. python学习笔记(八)传递任意数量的实参
  15. 如何充分利用Composition API对Vue3项目进行代码抽离
  16. 【Python 常用英文单词】——总结Python常用的英文单词 最全版
  17. 线特征作为视觉描述:用于视觉定位的上下文感知线特征描述符
  18. LikeLib区块链底层公链技术应用
  19. “三次握手,四次挥手”这么讲,保证你忘不了
  20. 计算机风景画作品,电脑风景画图片大全

热门文章

  1. linux 命令行 播放器,Linux下基于命令行的音乐播放器
  2. labview圆环里实物动画图形_LabVIEW编程技巧:功能强大的变体数据类型用法
  3. 先装vs还是先装sql_止回阀该装在出口阀前还是阀后?
  4. 鸿蒙系统下载地址_华为鸿蒙代码全开源,老规矩:先跑个Hello World....
  5. python websocket库有什么_常用Python爬虫与Web开发库有哪些?
  6. java 自定义注解 生成json_Java中如何创建自定义的注解
  7. java 正则表达式 判断 日期_怎么在java中利用正则表达式对时间日期进行判断
  8. Vue 与 Web Components
  9. ES6之let能替代var吗?
  10. linux search用法,在Linux中使用ldapsearch只返回一个值