在http://www.cipo.ic.gc.ca/app/opic-cipo/trdmrks/srch/tmSrch.do?lang=eng有一个页面
除非我有那个 jsessionid 号码,否则我不能使用 simple_html_dom 通过自定义表单来抓取结果。
是否有一种获取该会话 ID 的智能方法?获得会话 ID 后,我可以生成搜索 url,并以一种非常有意义的方式播放搜索结果。
谢谢!
在http://www.cipo.ic.gc.ca/app/opic-cipo/trdmrks/srch/tmSrch.do?lang=eng有一个页面
除非我有那个 jsessionid 号码,否则我不能使用 simple_html_dom 通过自定义表单来抓取结果。
是否有一种获取该会话 ID 的智能方法?获得会话 ID 后,我可以生成搜索 url,并以一种非常有意义的方式播放搜索结果。
谢谢!
进入搜索页面时,您将获得 jsessionid 作为 cookie。您的蜘蛛还必须在发送搜索请求之前获取此 cookie。
这是一个如何做到这一点的例子。该示例将使用 PEAR 存储库中的HTTP_Request2包。
require_once 'HTTP/Request2.php';
$url = 'http://www.cipo.ic.gc.ca/app/opic-cipo/trdmrks/srch/tmSrch.do?lang=eng';
$request = new HTTP_Request2($url);
$response = $request->send();
$cookies = $response->getCookies();
foreach($cookies as $cookie) {
if($cookie['name'] === 'JSESSIONID') {
$jsessionid = $cookie['value'];
break;
}
}
// play around with it
echo $jsessionid;