当前位置: 首页 > news >正文

1717做网站南宁网络推广平台

1717做网站,南宁网络推广平台,地图设计网站,wordpress适合建什么网站目录 我们发现csdn的文章 首先为了印证我们的想法 我们用postman往csdn我们任意一篇文章发起post请求 发送请求 ​编辑获得响应结果 我们发现我们的阅读量上涨 PostRequestSender类 但是我们经过测试发现 定义一个字符串数组 把URL放进去 然后延迟启动 在线程池里面…

目录

我们发现csdn的文章

首先为了印证我们的想法

我们用postman往csdn我们任意一篇文章发起post请求

发送请求

​编辑获得响应结果

我们发现我们的阅读量上涨

PostRequestSender类

但是我们经过测试发现

定义一个字符串数组 把URL放进去

然后延迟启动

在线程池里面设置任务的延迟和每次执行的间隔

主方法代码

博客的阅览量也在增长

然而为了防止被网站监测出来

我们可以采取其他策略

比如说往请求体里面塞一个随机数

注意不要写的太复杂 防止电脑卡爆

个人号推广

博客主页

Web后端开发

Web前端开发

数据库开发

项目实战

算法与数据结构

计算机基础

回忆录


我们发现csdn的文章

只要你点进去

就会增长阅读量

结合我们学习的计算机网络相关知识

不难猜测是只要向网页发送post请求

就能获得一次阅读量的增长。

POST请求是HTTP协议中的一种方法,用于向服务器提交数据,通常用于创建或更新资源,或者执行一些操作,比如提交表单数据、上传文件等。在Web开发中,POST请求比GET请求更安全,因为它将数据包含在请求体中,而不是像GET请求一样在URL中可见。

首先为了印证我们的想法

我们用postman往csdn我们任意一篇文章发起post请求

打开postman

发送请求

获得响应结果

我们发现我们的阅读量上涨

证实了我们的想法

我们只要往文章发送请求就行

利用网络编程的知识

我们写个发起请求的类

PostRequestSender类

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.Random;public class PostRequestSender {private String url;static long ans=0;public PostRequestSender(String url) {this.url = url;}public void sendPostRequest() throws IOException {// 创建URL对象URL obj = new URL(url);// 打开连接HttpURLConnection con = (HttpURLConnection) obj.openConnection();// 设置请求方法为POSTcon.setRequestMethod("POST");// 设置请求头con.setRequestProperty("User-Agent", "Java client");con.setRequestProperty("Content-Type", "application/json");// 可选:设置请求体Random random=new Random();int randomValue = random.nextInt(1000); // 生成一个0到999的随机整数String postData = "{\"key1\":\"value1\", \"key2\":\"" + randomValue + "\"}";con.setDoOutput(true);try (OutputStream os = con.getOutputStream()) {byte[] input = postData.getBytes(StandardCharsets.UTF_8);os.write(input, 0, input.length);}// 获取响应int responseCode = con.getResponseCode();System.out.println("Sending POST request to URL: " + url);System.out.println("Response Code: " + responseCode);System.out.println("run "+(ans++)+" ...");// 读取响应内容try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(), StandardCharsets.UTF_8))) {String inputLine;StringBuilder response = new StringBuilder();while ((inputLine = in.readLine()) != null) {response.append(inputLine);}
//            System.out.println("Response Body: " + response.toString());}}
}

但是我们经过测试发现

在同一时间内连续发送多次post请求

只会记录一次阅读量

这说明

CSDN自带有反爬的程序

我们可以规定在1分钟内依次爬取100篇文章

定义一个字符串数组 把URL放进去

然后延迟启动

利用的是多线程的知识

创建线程池

在线程池里面设置任务的延迟和每次执行的间隔

我们遍历数组

主方法代码

import java.io.IOException;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;public class Main {public static void main(String[] args) throws Exception {String[] urls = {"https://blog.csdn.net/qq_30500575/article/details/139987333?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139962431?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139962247?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139926411?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139920678?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139920678?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139904327?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139904250?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139841808?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139841808?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139842155?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139857617?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139857996?spm=1001.2014.3001.5501","https://blog.csdn.net/qq_30500575/article/details/139858097?spm=1001.2014.3001.5501"// Add more URLs as needed};// 创建定时执行的线程池ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);// 循环访问多个网址,并每隔20秒执行一次for (String url : urls) {Runnable task = () -> {try {PostRequestSender sender = new PostRequestSender(url);sender.sendPostRequest();} catch (IOException e) {e.printStackTrace();}};// 初始延迟10秒,每隔50秒执行一次任务executor.scheduleAtFixedRate(task, 10, 50, TimeUnit.SECONDS);}// 等待所有任务完成后关闭线程池executor.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS);executor.shutdown();}
}

启动 查看控制台信息

注意联网哦

依次爬取打印

博客的阅览量也在增长

同时还会打印状态码和URL地址

然而为了防止被网站监测出来

我们可以采取其他策略

比如说往请求体里面塞一个随机数

注意不要写的太复杂 防止电脑卡爆

个人号推广

博客主页

多多!-CSDN博客

Web后端开发

https://blog.csdn.net/qq_30500575/category_12624592.html?spm=1001.2014.3001.5482

Web前端开发

https://blog.csdn.net/qq_30500575/category_12642989.html?spm=1001.2014.3001.5482

数据库开发

https://blog.csdn.net/qq_30500575/category_12651993.html?spm=1001.2014.3001.5482

项目实战

https://blog.csdn.net/qq_30500575/category_12699801.html?spm=1001.2014.3001.5482

算法与数据结构

https://blog.csdn.net/qq_30500575/category_12630954.html?spm=1001.2014.3001.5482

计算机基础

https://blog.csdn.net/qq_30500575/category_12701605.html?spm=1001.2014.3001.5482

回忆录

https://blog.csdn.net/qq_30500575/category_12620276.html?spm=1001.2014.3001.5482

http://www.hengruixuexiao.com/news/55954.html

相关文章:

  • 免费制作网页网站怎么注册网站
  • 深圳做网站好的公司广告推广平台
  • 登录后台wordpress需要配置什么汕头seo不错
  • 创业做社交网站广州网站运营专注乐云seo
  • 国内十大网站建设品牌信息发布推广平台
  • 手机网站 制作技术搜索关键词排名优化服务
  • 绍兴做微网站深圳全网推互联科技有限公司
  • 中小型网站站内搜索实现微信怎么推广
  • 深圳网站建设 贴吧小红书seo是什么意思
  • 莆田网站格在哪里做seo 推广教程
  • 广西营销型网站建设百度sem推广具体做什么
  • asp动态网站开发男生短期培训就业
  • APP和网站是一样吗百度指数排名热搜榜
  • 晨光文具店网站建设营销手段有哪些方式
  • 软件ui长沙网站托管优化
  • wordpress多人博客官网seo是什么
  • 杭州做网站优化免费注册网站
  • 学做网站的书app推广赚钱
  • 三语网站建设app排名优化公司
  • 网站后台管理无法编辑广告营销策划
  • vs2008 网站消息弹窗怎么做今日国内最新新闻
  • 沈阳推广网站漳州seo建站
  • 怎样做自己的公司网站简述提升关键词排名的方法
  • 怎么注册自媒体个人账号seo诊断方案
  • 有哪些网站是中国风网站网上推广产品怎么做
  • 有口碑的郑州网站建设莆田网站建设优化
  • 松江做网站网店推广软文范例
  • 房产中介 网站开发网络网站推广
  • wordpress博客优秀上海关键词优化报价
  • 石家庄网站建设模板百度竞价点击软件