批量获取/打开链接 - 实践

1.应用场景

批量操作, 打开链接.

2.学习/操作

思路

获取超链接标签, 然后使用批量打开每个超链接, 从而不需要手动一个个打开链接

完善

建议用脚本实现, 然后写一个定时脚本[服务器上],每天定时执行.

环境

Chrome浏览器/其他浏览器也可以

PHP 7.3

nginx 1.15/1.16

方式一

2.1 使用 LmCjl在线工具 在线工具,抓取网页超链接[需要清洗数据,即不需要的数据去除掉即可]  --- 现在改为需要注册登录  -- 20210226 周五 家里

网站链接抓取_在线批量获取网页链接工具_链接抓取  //提取超链接在线工具

... 

2.2 使用在线工具批量打开超链接

2.2.1 输入 批量打开网址、网页、网站(网址、超链接批量打开工具,如何批量一键快速打开多个网站、网页) 回车

2.2.2 注意

 首次操作,点击批量打开按钮后,浏览器会在上端网址栏www.ab173.com最右端有小图标(隐蔽图标)提示拦截本站弹窗,请点击选择为允许本站所有弹窗。(不允许弹窗就是屏蔽批量打开的功能,请放心选择)若已经选择允许弹窗,并测试可以批量打开网址,请忽略以下操作。

详细信息见 批量打开网址、网页、网站(网址、超链接批量打开工具,如何批量一键快速打开多个网站、网页) 常见问题

chrome://settings/content/popups   //隐私设置和安全性 - 弹出式窗口和重定向

截图如下:

2.2.3 点击'批量打开',结果如下:

由上可知, 已经成功.

备注:

根绝个人电脑配置以及浏览器种类而定同时打开的超链接数.

这里:[作为参考]

同时开启200个tab, 是okay的.

cpu会瞬间升高, 但是稍后会降下来, 内存也会升高, 不会降下来. 

//另外我这里仅仅是想执行请求, 并不是要得到响应结果,所以页面发出请求就可以关闭了.

方式二:使用爬虫获取超链接,后用循环执行打开超链接  //均使用脚本语言来处理, 即完全自己写代码来处理

php/python均可.

PHP实现

<?php

//1.数据文件[这里不是大文件]
$dataFile = dirname(__FILE__) . '/urls.txt';

//2.读取文件内容
$dataStr = file_get_contents($dataFile);

//3.清洗数据
$dataStr = preg_replace('/([\d]+-[\d]+\s)|(\r\n)/', ' ', $dataStr);
$dataArr = explode(' ', $dataStr);

//3.1 随机选取部分数据, 也可以做测试
shuffle($dataArr); //打乱
$dataArr = array_slice($dataArr, 0, 147);

//4.统计时间
$timeSum = 0;
$num = 0;
$dataTime = date('Y-m-d H:i:s', time());

//5.curl请求[循环,也可以同时发请求
$ch = curl_init();
foreach($dataArr as $url){
    if(!$url){
        continue;
    }
    curl_setopt($ch, CURLOPT_URL, trim($url));
    curl_setopt($ch, CURLOPT_HEADER, TRUE);
    curl_setopt($ch, CURLOPT_NOBODY, TRUE); // remove body[即不输出body,Will be fasters]
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_exec($ch);
    if(!curl_errno($ch)){
      $info = curl_getinfo($ch);
      $timeSum += $info['total_time'];
      $num++;
      //echo 'Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url'] . "\n\r";
    } else {
      echo 'Curl error: ' . curl_error($ch) .  " with $url \n\r";
    }
}
// $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
// echo $httpCode;

echo $dataTime . ' Total took ' . $timeSum . ' seconds to send requests of ' . $num . ' urls' . "\n\r";

curl_close($ch);

邮件通知

// 提供个思路

暂时参见: Laravel 邮件_william_n的博客-CSDN博客_laravel 邮箱

实践TBD

定时脚本  // 用shell/Perl编写

shell脚本

Linux Crontab 定时任务 - 学习/实践_william_n的博客-CSDN博客  //Linux Crontab 定时任务

request_urls.sh

#!/bin/sh
cd ~/ningxiaofa/request_urls
php -q ./request_urls.php  >> ./request_urls.txt
fileSize=`ls -l  ./request_urls.txt | awk '{print $5}'`
if [ ${fileSize} -gt 51200 ]
then
     rm -rf  ./request_urls.txt
     touch ./request_urls.txts
fi

定时任务: //每31分钟执行一次

 */31 * * * * ~/crontab/request_urls.sh >> ~/ningxiaofa/request_urls.txt

修改后[将重定向输出写到shell脚本中]:

*/31 * * * * ~/crontab/request_urls.sh

最终结果:

定时脚本结果:

正常执行.

Note

这里因为会将echo 输出的内容重定向输出到request_urls.txt文本中, 可能时间长了之后, 文件较大,

建议在shell脚本中, 添加代码判断, 如果文件大小超过xxMB, 便删除该文件.然后重建文该文件[应不用TBD].

...

3.问题/补充

1.使用JavaScript能否正常实现功能? // 20201014 科学馆

TBD

4.参考

php curl批量打开网址(curl_multi类)的实现代码 -php教程-PHP中文网  //php curl批量打开网址(curl_multi类)的实现代码

在线工具大全 - 推荐_william_n的博客-CSDN博客_在线工具大全 //工具

网站链接抓取_在线批量获取网页链接工具_链接抓取  //提取超链接-在线工具
批量打开网址、网页、网站(网址、超链接批量打开工具,如何批量一键快速打开多个网站、网页)  //批量打开超链接-在线工具

Shell 编程 - 学习/实践_william_n的博客-CSDN博客 //Shell 编程

Shell脚本编写 - 学习/实践_william_n的博客-CSDN博客_shell脚本开发学习  //shell脚本编写思路

后续补充

...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/143007.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

批量保存网页为单个网页文件

有时候&#xff0c;总有会遇到一些奇怪的需求&#xff0c;各种搜索都找不到答案&#xff0c;本次记录批量保存网页到单个网页文件。 使用背景&#xff1a; 只想简单的解决问题&#xff0c;不涉及编程 网页带格式,将网页存为PDF格式会变 量太大&#xff0c;一个个的处理太累 涉及…

【数据安全-02】AI打假利器数字水印,及java+opencv实现

AIGC 的火爆引燃了数字水印&#xff0c;说实话数字水印并不是一项新的技术&#xff0c;但是这时候某些公司拿出来宣传一下特别应景&#xff0c;相应股票蹭蹭地涨。数字水印是什么呢&#xff0c;顾名思义&#xff0c;和我们在pdf中打的水印作用差不多&#xff0c;起到明确版权、…

python自动打开网页_python 自动批量打开网页的示例

python 自动批量打开网页的示例 如下所示&#xff1a; import webbrowser import codecs import time with open("test.txt") as fp: for ebayno in fp: url http://ebay.com/itm/ebayno.strip() time.sleep(1) #打开间隔时间 webbrowser.open(url) #打开网…

【bat批处理】手把手教你批量打开软件、文件、网页等

【bat批处理】打开软件、文件等 0- 前言1- start 命令用法1.0 注释1.1 start 命令说明1.2 启动软件1.3 打开文件1.4 打开文件夹1.5 打开网页 2-实战2.0 怎么创建bat批处理文件2.1 打开软件、文件、网页2.2 微信多开2.3 定时关机2.4 取消定时关机2.5 显示桌面图标 3 小结 0- 前言…

认识Vue中组件利器-插槽Slot-案例介绍

一. 插槽的使用 1.1. 认识插槽slot 在开发中&#xff0c;我们会经常封装一个个可复用的组件&#xff1a; 前面我们会通过props传递给组件一些数据&#xff0c;让组件来进行展示&#xff1b; 但是为了让这个组件具备更强的通用性&#xff0c;我们不能将组件中的内容限制为固定…

IDEA汉化后转回英文,只要三步

如果你觉得本文对你有帮助&#xff0c;麻烦动动手指顶一下

IntelliJ IDEA全界面汉化(官方插件)

现在很多人用IntelliJ IDEA写java代码&#xff0c;但小白很苦恼&#xff0c;看不懂&#xff0c;今天来分享一下怎么汉化 因为现在IDEA官方是支持汉化了&#xff0c;所以我们直接使用IDEA的插件 4. 下载Chinese汉化包&#xff08;第二个&#xff09; 重启IDEA就可以看到页面都变…

IDEA汉化及如何改回英文界面版本

相信很多小伙伴们刚接触IDEA时&#xff0c;看到一堆英文界面不知道如何下手&#xff0c;今天教大家一个插件直接将界面中文版本&#xff0c;以及改回英文版本。建议点赞收藏哈&#xff01; 一&#xff1a;汉化 1.打开左侧file,按箭头所示2.搜索Chinese&#xff0c;安装内存大的…

【IntelliJ IDEA】如何安装汉化插件

我使用的是2020.1的版本 汉化方式: 打开idea 点击settings 选择plugins 在marketplace 搜索 Chinese install之后 点击restart ide即可 汉化后的样子: 用不习惯也可以打开plugins 点开 installed将插件移除

IDEA汉化之2021版本

打开最新版本的IDEA后在浏览器直接进入Chinese (Simplified) Language Pack / 中文语言包 - IntelliJ IDEs | JetBrains&#xff0c;点击右上角&#xff0c;IDEA中会出现弹窗&#xff0c;直接起飞&#xff01;

IDEA汉化教程(一分钟即可)

Idea汉化教程&#xff08;简单&#xff0c;一分钟即可&#xff09; 步骤 打开idea点击左上角的File&#xff0c;然后点击Settings&#xff08;如下图&#xff09; 进去后点击Plugins&#xff0c;然后点击Marketplace&#xff0c;然后再搜索框搜索 chinese 然后搜索出东西&…

idea中文版插件

IDEA怎么设置成中文&#xff1f; 首先点击左上角的File-Settings 进入设置 进入Settings后点击Plugins&#xff0c;在搜索框输入Chinese language pack&#xff0c;点击install安装插件 下载成功后&#xff0c;点击installed,找到下载的汉化插件&#xff0c;点击Restart IDE&…

IntelliJ IDEA中文汉化教程

在找IDEA汉化的过程中&#xff0c;看了好多都没有说第二步的小问题&#xff08;问题虽小&#xff0c;但是也还是会有困扰的人&#xff0c;比如我&#xff0c;所以写了一篇可以解决这个问题的小文章&#xff0c;记录一下处理问题的结果&#xff0c;也希望能帮助到跟我一样的被困…

Intellij IDEA设置中文界面(汉化)

因为现在IDEA官方是支持汉化了&#xff0c;所以我们可以直接使用IDEA的插件来设置。这简直是我们这些英语小白的福音啊啊&#xff08;想起以前刚刚上手满屏英文&#xff0c;一头两大...它认识我我不认识它&#xff0c;这是神马感jio&#xff01;&#xff01;&#xff01;&#…

IDEA汉化

1、下载 resources_cn.jar &#xff08;下载路径&#xff1a;http://www.downza.cn/soft/211722.html&#xff09; 2、打开idea安装目录&#xff0c;打开lib文件夹 3、将 resources_cn.jar 文件复制到lib&#xff0c;重启idea就OK了 4、如果汉化后发现设置&#xff08;Setting&…

2020版 IDEA怎样汉化与怎样切换为英化

害&#xff0c;容我先吐槽吐槽&#xff0c;我这大半天时间用来解决IDEA2017版本占CPU高达80%的问题&#xff0c;还又时不时来个未响应。然鹅–就是各种办法都试了&#xff0c;结果一打开&#xff0c;还是原样子。没办法&#xff0c;我卸载了2017版本&#xff0c;直接安装了2020…

IDEA 2020.1官网汉化插件安装

idea 终于更新了2020.1版本&#xff08;推荐使用2020的版本&#xff09;&#xff0c;新增了好多的特性&#xff0c;官方也终于支持了中文语言包&#xff0c;但是有些兄弟下载后在插件市场无法找到官方的汉化包等问题&#xff0c;请安装下面操作即可&#xff1a; 1、去IDEA插件…

idea汉化教程

1.同样的&#xff0c;第一步&#xff0c;打开软件 2.进入软件后依次点击file→settings 3.接着点击plugins 4.然后点击Marketplace&#xff08;在线搜索插件&#xff09; 5.在搜索框输入chinese&#xff08;看到这个名字&#xff0c;知道是啥了吧&#xff09;&#xff0c;找到C…

如何汉化IDEA

汉化IDEA 距离上次写博客已经过去很久了&#xff0c;期间一直在写前端页面&#xff0c;最近也写后端打开了IDEA发现界面全是英语有些看不懂&#xff0c;想必有人也会跟我一样&#xff0c;接下来我给大家分享下如何汉化IDEA。 1、首先我们百度搜索“Github”&#xff0c;进入官…

IntelliJ IDEA官方汉化教程

IntelliJ IDEA官方汉化教程 MacOS 汉化步骤截图 MacOS 汉化 步骤 启动IntelliJ IDEA找到中文语言包插件 Plugins->在搜索栏中输入关键词“Chinese”->Chinese(Simplified) Language Pack /中文语言包 安装中文插件&#xff1a;Install重启IntelliJ IDEA确认汉化结果 截…