我正在尝试从远程站点获取图表图像。
但是该图像似乎是在调用时从站点动态创建的。
未登录时它不会返回任何内容。
这是图片网址
<img src="http://fuelbuyer.dtn.com/energy/view/energy/chart.do?width=150&height=120&chartType=0&ts=1352196066175&rackId=446&productId=179&points=8&showExtraLine=True">
我以某种方式设法使用此代码登录并尝试显示图像。
但它不起作用。
$ch = curl_init();
$url = 'http://fuelbuyer.dtn.com/energy/common/signin.do?';
$login = 'username=$USER&password=$pass&autoLogin=true&partnerId=0&partnerName=';
curl_setopt($ch, CURLOPT_URL, $url.$login);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
直接调用图像 URL(仅在登录时在浏览器地址栏上),将给出一些代码,例如
" ‰PNG IHDR–xŸ-–GPIDATxÚílÇÇ IHKB-ËuÄت!Eš°Š !ÈB IÀµ©...œ€ $@S‡8¶ ªÀ"D²œÐbR Æ`~WjAx;~Äø...ç·ï±;³ýÎk×ûºÙݳ™»Þ_ +´Ü÷v÷·3óÿf¾™òqnAa@„ùÂM›6åÔ5}£¡k訚Ži踶¾USž†Nh(_M'5tJC Á™°‚ðN?ÿ¼3>¾=5µîòåêÕô©V¢:‰ê%º+ QƒD5õ©Y"›D-Õ*Q›Dí}ê¨S¢.‰º%²Käè"³Û¹"߸ÑUPà'^"^—õéôéÓ!rBP¸¡Ÿÿ¼®¨¨F"ïò""´ÂOŠÐ4? G}=ŽŠ"×ÎgdPòc!† #—[WB}"
但是当被称为
<img src="http://fuelbuyer.dtn.com/energy/view/energy/chart.do?width=150&height=120&chartType=0&ts=1352196066175&rackId=446&productId=179&points=8&showExtraLine=True">
将给出正确的图像。
我真的不知道下一步该怎么做。
如何使用 cURL 登录网站并执行此行。
<img src="http://fuelbuyer.dtn.com/energy/view/energy/chart.do?width=150&height=120&chartType=0&ts=1352196066175&rackId=446&productId=179&points=8&showExtraLine=True">
成功登录后,该站点将被重定向到主页。
因此,我也必须防止重定向。
会话将在几秒钟后终止。
提前谢谢你,
尤金PJ
我让它工作了。请参阅此评论。
无法从我的学校网站获取我的日程安排数据。使用 cURL 登录将不起作用