最近关于诺贝尔奖的关注点蛮高的,毕竟是世界级的大奖,据诺贝尔奖官网消息,2021年诺贝尔文学奖于由坦桑尼亚作家阿卜杜勒-拉扎克·古尔纳获得,然后网上讨论比较多的是日本作家春上村树又陪跑了一次,很多人为他感到惋惜,有些人又在一旁分析他为什么总是陪跑的原因。
让小编比较感兴趣的是,我很想看下这么多年来都是有哪些人获取的这个奖,但是网上看了很久都没有一个比较全面些的,偶然间发现了一个网站对这个奖项的记录还挺详细的,简单的看了下网页介绍,感觉不是很难获取数据,所以我简单的写了个爬虫程序,今天就趁着这个热点给大家分享下诺贝尔奖的详细知识,感兴趣的小伙伴可以关注下呀。
网站https://www.nobelprize.org/prizes/lists/all-nobel-prizes-in-literature/
爬虫程序获取数据的示例如下:
<?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的访问的,所以我示例也和大家分享了加上代理的使用方式,特别是对新手小伙伴来说是很有参考价值的哈。
因为获取到的数据量还是挺多的,小编需要进行数据分析,下次可以分享给大家一个完整的数据信息。