Burunduk1982
Постоялец
- Регистрация
- 26 Мар 2007
- Сообщения
- 630
- Реакции
- 133
- Автор темы
- #1
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
7767bda2a10df1b9f849e67a7a8eb263 - получаю, но что с ним делать не знаю. Номер телефона планируется сохранять с прочими данными. Если располагаете временем и желанием - не могли бы вы привести пример парсинга номера на php? ниже скрипт, с помощью которого забираю код из ссылки:Начнем с того что Для просмотра ссылки Войдиили Зарегистрируйся- нужно брать со страницы, это свое образная подпись.
А CORS должен прописать avito, что б дать вам возможность общаться с ними.
Если вам нужно в дальнейшем просто тупо сохранить этот номер то можно парсить просто php.
Сначала получить ключ, а потом парсить как обычный json
7767bda2a10df1b9f849e67a7a8eb263 - получаю, но что с ним делать не знаю. Номер телефона планируется сохранять с прочими данными. Если располагаете временем и желанием - не могли бы вы привести пример парсинга номера на php? ниже скрипт, с помощью которого забираю код из ссылки:
<?php
define('DOMAIN','m.avito.ru');
define('SCHEME','https://');
define('PATERN','~<a class="person-action button button-solid button-blue button-large action-show-number action-link link "(.*?)phone/(.*?)".*~is');
$url = 'https://m.avito.ru/kaluga/komnaty/komnata_10_m_v_5-k_33_et._514069333';
function get($url, $ajax=false){
$ch = curl_init ();
curl_setopt ($ch , CURLOPT_URL , $url);
if($ajax) {
$headers = array(
'x-requested-with: XMLHttpRequest',
'accept: application/json, text/javascript, */*; q=0.01',
'accept-language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4,uk;q=0.2',
'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36',
'referer: ' . str_replace(SCHEME . DOMAIN,'',$url), // game of imitation :)
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1 );
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
$content = get($url);
preg_match_all(PATERN, $content, $matches);
$key = $matches[2][0];
$phone = get($url . '/phone/' . $key . '?async', true);
print_r($phone);
Огромное спасибо за решение и помощь! на удаленном сервере все работает! но на локалке нет:Регулярка правда каличная но я не стал исправлять, мну лень
Проверил $content - тоже пустая.Notice: Undefined offset: 0 in G:\home\test\www\phone.php on line 36
Notice: Undefined offset: 0
Да, судя по-всему что-то с курлом:Нужно смотреть. Возможно что-то с curl.
Попробуйте сделать var_dump(get('Для просмотра ссылки Войдиили Зарегистрируйся
Посмотреть что выйдет.
На удаленном сервере php5.2, на локалке 5.3, курл подключен.Fatal error: Call to undefined function curl_inits() in
var_dump(extension_loaded('curl'));
var_dump(extension_loaded('curl')); выдает bool(true)Дело точно не в версии пыхи. Локально curl не подключен.
Как вы проверяете подключен ли он?
Через cli (коносль) или веб сервер запускается скрипт?
Какая система локально (win,*nix)?
Попробуйте
посмотреть.PHP:var_dump(extension_loaded('curl'));