作者JohnGod21 (江神Johnson)
看板PHP
标题[请益] curl 抓TripAdvisor的问题
时间Wed Feb 27 15:16:54 2013
我利用
<?
$url_english =
"
http://www.tripadvisor.com.tw/MachineTranslation?g=293913&d=1395608&
r=152323327&page=review&sl=en&tl=zh_TW";
echo $url_english."<br>";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url_english);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0;
Windows NT 5.1; .NET CLR 1.1.4322)");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$output = curl_exec($ch);
curl_close($ch);
echo "<textarea rows=\"4\" cols=\"50\">";
echo $output; //整篇文章
echo "</textarea>";
echo "<br>";
?>
取得我要的网页原始码 但是回传完全是空的
他原本是
http://www.tripadvisor.com.tw/ShowUserReviews-g293913-d1395608-r152323327
-Hotel_Eclat-Taipei.html#REVIEWS
网页中
""
点我看中文"" 的功能
我想是不是因为是TripAdvisor去呼叫google翻译的API需要时间
所以curl太早抓 所以回传为空 但是加了CURLOPT_CONNECTTIMEOUT 之後
觉得好像也不是这样(还是抓不到)
谢谢各位
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.117.68.93
1F:→ twsphere:第一次打开是空白的 流览过你原本的才有东西 猜cookie 02/27 16:05
2F:→ JohnGod21:最上面的url直接开 是有东西没错 就是抓不到 02/27 16:52
3F:→ JohnGod21:我懂你的意思了 所以需要先看下面的网址取得cookie 02/27 16:56
4F:→ JohnGod21:已解决谢谢大大 方法是先浏览下面的网页存下cookie 02/27 17:08
5F:→ JohnGod21:然後读取cookie 开上面的网页 再次感谢 ^^ 02/27 17:09