想通过采集代理ip来做代理ip池,通过大量的Ip提高seo效果,习惯了正则处理,但是今天有时间测试下queryList,毕竟工欲善其事必先利其器。
// 保存全部的代理IP
$allProxy = [];
// 循环爬取数据
for ($i = 0; $i < 10; $i++) {
// 页码
$page = $i + 1;
// 请求地址
$url = 'https://proxy.ip3366.net/free/?action=china&page=' . $page;
// 定义采集规则
$rules = [
'ip' => ['td[data-title=IP]', 'text'],
'port' => ['td[data-title=PORT]', 'text'],
'type' => ['td[data-title=类型]', 'text'],
];
// 循环的dom主体
$range = 'tbody tr';
$rt = QueryList::get($url)->rules($rules)->range($range)->query()->getData();
foreach ($rt->all() as $ip) {
$allProxy[$ip['ip']] = $ip;
}
// 休息1秒
//sleep(1);
} 前公司吃饭是需要在钉钉报餐的,对于不挑剔的我每天都在公司吃饭,有时忘记报餐导致吃不了饭还是很麻烦的。看了下报餐系统需要的是json数据包含我的工号即可。于是编写如下代码,放在360网址监控,1小时执行1次<?php /*自动报餐类*/ class AutoBaocan{...
先在centos安装openssl,然后开始://生成私钥openssl genrsa -out rsa_private_key.pem 1024//生成公钥openssl rsa -in rsa_private_key.pem&...
最近在编写windows php多线程的东西,从官网下载了PHP的线程安全版,尝试开启curl扩展extension=php_curl.dllphp -m 却提示 PHP Startup: Unable to load dynamic library 'C:\php\ext\php_curl...
在项目下的composer配置文件修改(PaySdk是我这里一个支付sdk的目录,包含各种各样的支付sdk,这样写的意思让composer自动把PaySdk下的所有文件自动加载):"autoload": { &...
<?php //如果支持exec函数,可以使用的方式 exec('chcp 65001'); //如果exec函数因安全问题禁用,可以使用的方式 pclose(popen('chcp 65001', 'r'));...
将jsonp转为PHP数组和对象。/** * jsonp转数组|Jsonp转json * @param string $jsonp jsonp字符串 * @param bool $as...