• Nginx配置

    Ngnix基础配置,可用于生成前端静态代理,后端接口代理。文件生成后,直接放入nginx安装目录下的conf.d目录下即可。

    0次收藏 61次使用
    2020-02-22 23:31
  • CSDN自动点赞指定用户所有文章脚本

    生成csdn文章快速点赞脚本,有文章点赞需求的朋友可以自己生成后发给朋友。 # 使用步骤 ##### 一、生成脚本 录入目标用户,需要点赞的页数,点赞的开始页数即可生成,目标用户从用户主页中获取,如下图红色标记位置 ![3.png](/resources/template/6091addb-38bb-4797-8e24-3c15aaa8048b.png) ##### 二、复制生成好的脚本,点击下图红色标记的复制按钮即可 ![4.png](/resources/template/6e6518bf-10eb-4667-8e1b-2812ece6f051.png) ##### 三、浏览器中打开blog.csdn.net(或此域名下的任意网页),按F12进入开发者模式,选择Console页签,粘贴代码并回车 ![5.png](/resources/template/1aeaf3ca-fb94-4d2c-98a1-1c02cab34102.png) ##### 四、等待自动文章搜索 ![1.png](/resources/template/dfe4cce6-432f-4505-9b64-fc43b4f82e2d.png) ##### 五、完成自动点赞,我这已经点赞超限了 ![2.png](/resources/template/c41f4b06-a070-464a-9f97-9e2fe8a725f4.png) # 注意事项 1. 必须在blog.csdn.net域名下粘贴代码 2. 必须要登录,否则会提示“文章状态不可点赞” 3. 由于CSDN的每天的点赞限制,请谨慎使用此脚本

    0次收藏 19次使用
    2020-02-23 12:06

CSDN自动点赞指定用户所有文章脚本
0
0

版本号:user-1.0.0 | 19次使用
2020-02-23 12:06
Javascript 自动点赞脚本

模版代码

function getArticles() {
  const articles = []
  const articleDoms = document.getElementsByClassName('article-item-box')
  for (const articleDom of articleDoms) {
    articles.push({
      id: articleDom.getAttribute('data-articleid'),
      name: articleDom.getElementsByTagName('a')[0].innerText
    })
  }
  return articles
}
function ajax(uri, method, async, callback) {
  const xmlHttp = new XMLHttpRequest();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
      callback(xmlHttp.responseText)
    }
  }
  xmlHttp.open(method, uri, async);
  xmlHttp.send();
}
function getArticlePage(pageIndex, callback) {
  ajax("/${username}/article/list/" + pageIndex, 'GET', false, data => {
    document.getElementById('_page').innerHTML = data
    callback()
  })
}
function searchArticle(callback) {
  document.body.innerHTML = ''
  const page = document.createElement('div');
  page.id = '_page'
  document.body.insertBefore(page, document.body.firstElementChild);
  const resultDialog = document.createElement('div');
  resultDialog.id = '_resultDialog'
  resultDialog.style = 'display:flex;align-items: center; justify-content: center;position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.3);z-index:9;'
  document.body.insertBefore(resultDialog, document.body.firstElementChild);
  document.getElementById('_resultDialog').innerHTML = '<div id="_result" style="width:600px;max-height: 600px;overflow-y: auto;box-shadow: 0 0 8px -2px #333;padding: 15px 30px; background: #fff;">正在搜查文章,请稍后...</div>'
  setTimeout(() => {
    const articles = []
    getArticlePage(${diggStartPageIndex}, () => {
      articles.push.apply(articles, getArticles());
      for (let i = ${diggStartPageIndex} + 1; i <= ${diggPageCount} + ${diggStartPageIndex}; i++) {
        getArticlePage(i, () => {
          articles.push.apply(articles, getArticles());
        })
      }
    })
    <#noparse>let resultDoms = `<h3 style="border-bottom: 1px solid #ccc;line-height: 40px;font-size: 14px;">共搜索到 ${articles.length} 篇文章</h3>`</#noparse>
    for (const article of articles) {
      resultDoms += `
      <#noparse><div id="${article.id}" style="display: flex;line-height: 30px;">
        <span style="width: 320px; height: 30px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;">${article.name}</span>
        <span style="width: 280px; text-align: right;">waiting...</span>
      </div></#noparse>
    `
    }
    document.getElementById('_result').innerHTML = resultDoms
    callback(articles)
  }, 0)
}
function doLike() {
  searchArticle(articles => {
    for (const article of articles) {
      ajax('/${username}/phoenix/article/digg?ArticleId=' + article.id, 'GET', true, data => {
        const statusDom = document.getElementById(article.id).getElementsByTagName('span')[1]
        data = JSON.parse(data)
        if (data.status === true) {
          statusDom.innerText = '点赞成功'
        } else if (data.status === 0) {
          statusDom.innerText = data.msg
        } else {
          statusDom.innerText = '点赞失败'
        }
      })
    }
  })
}
doLike()

相关模版

  • 快速定义JSON对象,包含注释

    通过元数据快速定义JavaScript的JSON对象,使用驼峰命名法自动转换字段名称

    0次收藏 160次使用
    2020-02-22 19:26
  • 为Vuex的State快速生成set方法

    使用Vuex时经常需要在Mutations中为State生成set方法,该模版可快速生成这些代码

    0次收藏 92次使用
    2020-02-22 19:26
  • CSDN自动点赞指定用户所有文章脚本

    生成csdn文章快速点赞脚本,有文章点赞需求的朋友可以自己生成后发给朋友。 # 使用步骤 ##### 一、生成脚本 录入目标用户,需要点赞的页数,点赞的开始页数即可生成,目标用户从用户主页中获取,如下图红色标记位置 ![3.png](/resources/template/6091addb-38bb-4797-8e24-3c15aaa8048b.png) ##### 二、复制生成好的脚本,点击下图红色标记的复制按钮即可 ![4.png](/resources/template/6e6518bf-10eb-4667-8e1b-2812ece6f051.png) ##### 三、浏览器中打开blog.csdn.net(或此域名下的任意网页),按F12进入开发者模式,选择Console页签,粘贴代码并回车 ![5.png](/resources/template/1aeaf3ca-fb94-4d2c-98a1-1c02cab34102.png) ##### 四、等待自动文章搜索 ![1.png](/resources/template/dfe4cce6-432f-4505-9b64-fc43b4f82e2d.png) ##### 五、完成自动点赞,我这已经点赞超限了 ![2.png](/resources/template/c41f4b06-a070-464a-9f97-9e2fe8a725f4.png) # 注意事项 1. 必须在blog.csdn.net域名下粘贴代码 2. 必须要登录,否则会提示“文章状态不可点赞” 3. 由于CSDN的每天的点赞限制,请谨慎使用此脚本

    0次收藏 19次使用
    2020-02-23 12:06

评论

  • 快捷评论:
  • 666
  • 支持一下
  • 请你一定要继续完善
  • 不错,再完善完善就更好了