最近关于诺贝尔奖的关注点蛮高的,毕竟是世界级的大奖,据诺贝尔奖官网消息,2021年诺贝尔文学奖于由坦桑尼亚作家阿卜杜勒-拉扎克·古尔纳获得,然后网上讨论比较多的是日本作家春上村树又陪跑了一次,很多人为他感到惋惜,有些人又在一旁分析他为什么总是陪跑的原因。
让小编比较感兴趣的是,我很想看下这么多年来都是有哪些人获取的这个奖,但是网上看了很久都没有一个比较全面些的,偶然间发现了一个网站对这个奖项的记录还挺详细的,简单的看了下网页介绍,感觉不是很难获取数据,所以我简单的写了个爬虫程序,今天就趁着这个热点给大家分享下诺贝尔奖的详细知识,感兴趣的小伙伴可以关注下呀。
网站www.nobelprize.org/prizes/list…
爬虫程序获取数据的示例如下:
<?php
// 要访问的目标页面
$url = "https://www.nobelprize.org/prizes/lists/all-nobel-prizes-in-literature/";
$urls = "https://www.nobelprize.org/prizes/lists/all-nobel-prizes-in-literature/";
// 代理服务器(产品官网 www.16yun.cn)
define("PROXY_SERVER", "tcp://t.16yun.cn:31111");
// 代理身份信息
define("PROXY_USER", "username");
define("PROXY_PASS", "password");
$proxyAuth = base64_encode(PROXY_USER . ":" . PROXY_PASS);
// 设置 Proxy tunnel
$tunnel = rand(1,10000);
$headers = implode("\r\n", [
"Proxy-Authorization: Basic {$proxyAuth}",
"Proxy-Tunnel: ${tunnel}",
]);
$sniServer = parse_url($urls, PHP_URL_HOST);
$options = [
"http" => [
"proxy" => PROXY_SERVER,
"header" => $headers,
"method" => "GET",
'request_fulluri' => true,
],
'ssl' => array(
'SNI_enabled' => true, // Disable SNI for https over http proxies
'SNI_server_name' => $sniServer
)
];
print($url);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);
// 访问 HTTPS 页面
print($urls);
$context = stream_context_create($options);
$result = file_get_contents($urls, false, $context);
var_dump($result);
?>
这个网站虽然看似不难,但是需要的数据量还是有点多,网站还是会限制ip的访问的,所以我示例也和大家分享了加上代理的使用方式,特别是对新手小伙伴来说是很有参考价值的哈。
因为获取到的数据量还是挺多的,小编需要进行数据分析,下次可以分享给大家一个完整的数据信息。