PHP在Windows下结合bat批处理实现多进程验证代理服务器功能

PHP在Windows下结合bat批处理实现验证代理ip服务器功能

  由于业务,需要使用到代理服务器,网上有很多提供代理服务器信息的站点,所以可以从这些站点获取信息。不过获取到的IP由于网络或其他原因,某些是不可访问,就需要做验证筛选,得到能使用的代理服务器。

一、通过PHP的CURL抓取并验证代理

  使用CURL抓取

思路

  1. CURL抓取网站内容;
  2. simple_html_dom (点击下载) 解析抓取的内容,解析出关键信息,并保存文件(或缓存);
  3. 对关键信息 (代理服务器的IP和端口),进行CURL验证;
  4. 验证分为HTTPS 和HTTP方式,要注意区分。

二、通过bat进行多进程处理

思路

  1. 单个cmd窗口可以运行一个php.exe进程,多个可运行多个进程;
  2. 修改php程序,支持cli模式的传参,通过参数不同,抓取的网站链接不同;
  3. 通过start 命令(查看说明)运行多个cmd,用 & 连接,做成 main.bat 文件;
  4. 在 main.bat 文件中监听 其他cmd窗口的运行状况,可以通过 设置 cmd的title在tasklist中获取;
  5. 当其他cmd窗口(php任务)运行完成之后,合并结果集。

三、将多进程处理的结果合并

  将从第一步保存的文件取出,然后通过PHP代码合并其结果,输出到 result_xxx.json 中即可;

代码暂不贴出了,等后面更新。


猜你喜欢

转载自blog.csdn.net/u012369749/article/details/79737952