0

Webサイトからいくつかの電話番号を解析しようとしています。

cURLを介してソースコードを取得している間、コードの半分しか返されませんが、欠落している部分はまさに私が必要としているものです。このことは私を悩ませ続けます。

これまでの私のコード:

$ch = curl_init("http://www.baroul-bucuresti.ro/index.php?w=definitivi&l=C&p=2");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
$content = curl_exec($ch);
curl_close($ch);
print_r ($content);
4

1 に答える 1

2

問題は、問題のURLに302が含まれていて、別の場所にリダイレクトされていることだと思います。

$ telnet www.baroul-bucuresti.ro 80
Trying 91.208.179.20...
Connected to www.baroul-bucuresti.ro.
Escape character is '^]'.
GET /index.php?w=definitivi&l=C&p=2 HTTP/1.1
host: www.baroul-bucuresti.ro

HTTP/1.1 302 Found
Date: Fri, 27 Apr 2012 20:24:54 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Set-Cookie: PHPSESSID=qjbqvveqtmarv7o0f820bbeq71; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: for_tablou=1
Set-Cookie: bvbsessionhash=b9c609e162dab90fc86c1fdb52e07fdd; expires=Sun, 27-May-2012 20:24:57 GMT; path=/
Set-Cookie: bvblastvisit=1335558297; expires=Sun, 27-May-2012 20:24:57 GMT; path=/
Set-Cookie: bvblastactivity=1335558297; expires=Sun, 27-May-2012 20:24:57 GMT; path=/
Set-Cookie: bvbuserid=deleted; expires=Thu, 28-Apr-2011 20:24:56 GMT; path=/
Set-Cookie: for_tablou=1
Location: /tablou

このオプションをcurlに追加して、コードを変更しました。

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

そして、今は完全なコンテンツを取得しているようです。必要なコンテンツかどうかはわかりませんが、実際の場所の完全なコンテンツを取得しています。試してみてください。

于 2012-04-27T20:28:48.650 に答える