Нужен скрипт для нахождения ссылок

IG
На сайте с 13.06.2008
Offline
0
1073

Помогите пожалуста!Хотя бы немного.

Как ,пользуясь страницей http://siteexplorer.search.yahoo.com/ определить для страницы количество внешних ссылок на неё (Inlinks,Except from this domain)?

Это нужно сделать с помошью скрипта(лучше php).

[Удален]
#1

зарегистрируйся в developer.yahoo.com, получи api key и будешь иметь право делать до 5000 запросов в день с этим ключом :)

там есть документация и написано как взять inlinks используя ключ. в ответ на запрос получишь xml файл, который можешь обработать на пхп и составить список в приятном для тебя виде :)

а если ты хотел узнать как сделать такую же тулзу, которая ссылки на сайт считает, то тебе в раздел про разработку поисковых систем)

IG
На сайте с 13.06.2008
Offline
0
#2

Спасибо огромное!

Ira_Ganich добавил 13.06.2008 в 11:20

Я не очень дружу пока с англ яз.

а кто-то может дать прямую ссылку на место где это все написано в документации???

Заранее огромное спасибо за советы.

Progr@mmer\.
На сайте с 14.10.2007
Offline
44
#3

Если доберусь до компа, то скину ссылку на регистрацию апи-ключа и скину php-скрипт для таскания ссылок.

Вашей девушке не хватает романтики? Черпните её на сайте «Я Люблю Романтику» (http://iloveromantics.ru/). Романтический форум (http://forum.iloveromantics.ru/) для отдыха от нудной работы.
IG
На сайте с 13.06.2008
Offline
0
#4

Жду не дождусь(мне нужно после обеда сдать задание:) ).

Огромное спасибо,что помогаете мене!

R
На сайте с 18.03.2008
Offline
97
#5
Ira_Ganich:
Я не очень дружу пока с англ яз

http://translate.google.com/translate_t?hl=ru тебе в помощь))

IP телефония ( https://nextel.cloud ) | Виртаульная АТС (https://nextel.cloud/virtual-pbx/) | Автообзвон (https://nextel.cloud/autodiler/)
Progr@mmer\.
На сайте с 14.10.2007
Offline
44
#6

Наверно, я сначала не так понял :-[

Ira_Ganich:
Как ,пользуясь страницей http://siteexplorer.search.yahoo.com/ определить для страницы количество внешних ссылок на неё (Inlinks,Except from this domain)?

Может это или это нужно?

Inlinks (2,412)

Получить апи-ключ можно здесь

Или всё таки тебе нужен скрипт, который будет скачивать все видимые внешние ссылки и сохранять их вместе с заголовком ссылающейся страницы в *.csv/*.html файл?

IG
На сайте с 13.06.2008
Offline
0
#7

мое задание:

Написать скрипт на PHP который будет выполнять следующее:

Как ,пользуясь страницей http://siteexplorer.search.yahoo.com/ определить для страницы количество внешних ссылок на неё (Inlinks,Except from this domain)?

и

Сохранить в базу данных MySQL полученные результаты для каждой страницы и время проверки.

Я так понимаю

что первая часть это

"Или всё таки тебе нужен скрипт, который будет скачивать все видимые внешние ссылки и сохранять их вместе с заголовком ссылающейся страницы в *.csv/*.html файл? "

то что ты написал только не в файл а в б.д.

Progr@mmer\.
На сайте с 14.10.2007
Offline
44
#8

Ira_Ganich, ты вообще в php разбираешься хоть немного?

Вот файлик, чтоб таскать ссылки через api в serialize() формате:


<?
$appid = ""; // сюда написать зарегистрированный апи кей
$req_url = 'http://world-of-love.ru'; // сайт, который будем проверять
$file_name = '/csv/world-of-love2.ru'; // куда положим результаты

$max_links = 100;
$output = 'php';

$file_name = dirname(__FILE__) . $file_name;

$n = PHP_EOL;
$sleep = 2;

ini_set('display_errors',1);
error_reporting(E_ALL);

@chmod($file_name.'.csv', 0777);

// функция для "вытаскивания" ссылок
function open_yil ($site, $start = '', $adv_args = '') { // $start = '...&', $adv_args = '&...'
global $appid, $max_links, $output;

$url = 'http://search.yahooapis.com/SiteExplorerService/V1/inlinkData?appid='.$appid.'&query='.$site.'&results='.$max_links.'&'.$start.'output='.$output.$adv_args.'&entire_site=1';

$file = file_get_contents($url);

return $file;
}

// функция, формирования текста, который будет положен в *.csv-файл ($file_name)
function getdata ($array) {
global $n;
$array_count = sizeof($array);
$res = '';
for ($j = 0; $j < $array_count; $j++) {
$res .= '"'.$array[$j]['Url'].'";"'.$array[$j]['Title'].'"'.$n;
}

return $res;
}

// функция для сохранения результатов
function adddata2 ($file_data) {
global $file_name;

$file = fopen($file_name.'.csv', 'ab');
fwrite($file, $file_data);
fclose($file);
// chmod($file_name.'.csv', 0777);

return true;
}


$end = 1000;

$i = 1;

// for ($i = 1; $i < $end; $i+$max_links) {
while ($i <= $end) {
$result = open_yil($req_url, 'start='.$i.'&') or exit ($i.' - not open_yil!');
$result2 = unserialize($result);

if ($i == 1) {
$data = '"totalResultsAvailable";"'.$result2['ResultSet']['totalResultsAvailable'].'"'.$n.'"";""'.$n;
$data .= getdata($result2['ResultSet']['Result']);
} else {
$data = getdata($result2['ResultSet']['Result']);
}

if (!adddata2($data)) {
exit ($i.' - adddata false');
}


// sleep($sleep);
$i = $i + $max_links;
}

echo "Успешно!";


/* Формат отдаваемых данных, после обработки их функцией unserialize();
Array
(
[ResultSet] => Array
(
[totalResultsAvailable] => 48320
[firstResultPosition] => 1
[totalResultsReturned] => 100
[Result] => Array
(
[0] => Array
(
[Title] => Линейки и метрики для форумов от Мира Любви и Романтики
=> http://line.world-of-love.ru/
[ClickUrl] => http://line.world-of-love.ru/
)
...
*/

?>

[Удален]
#9

видимо решил от реселлерить нахаляву =))

ТС проще заплати кому нибудь за % от того, что тебе заплатят за задание.

IG
На сайте с 13.06.2008
Offline
0
#10

Спосибо огромное!Вы мне очень помогли.

В php немного разбераюсь, просто с такими заданиями еще никогда не сталкивлась.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий