Программирование на PHP

12
R
На сайте с 19.09.2007
Offline
36
2115

Добрый День!

Пока что только начинаю писать на php поэтому готов написать для Вас небольшие скрипты за отзыв.

Знаю PHP, MySQL, HTML.

ICQ - 434-44-99

E-Mail: rydx [собак} yandex [точка} ru

Skype: r-y-d-x

anser06
На сайте с 11.03.2006
Offline
276
#1

Напишите для меня и всех нуждающихся скрипт автоматического удаления страниц сайта из индекса Яндекса с помощью формы на http://webmaster.yandex.ru/delurl.xml

Чтобы можно было задать скрипту список URL и получить список ответов. Скрипт пригодится не только мне.

WwWork
На сайте с 07.02.2006
Offline
150
#2

Парсингом занимаетесь, за отзыв?

Если да, кое что надо...

R
На сайте с 19.09.2007
Offline
36
#3

Могу попробовать...пишите, я контакты указал

R
На сайте с 19.09.2007
Offline
36
#4
anser06:
Напишите для меня и всех нуждающихся скрипт автоматического удаления страниц сайта из индекса Яндекса с помощью формы на http://webmaster.yandex.ru/delurl.xml

Чтобы можно было задать скрипту список URL и получить список ответов. Скрипт пригодится не только мне.

Скрипт сделал, правда еще доработаю, куда его можно тут на форуме выложить не знаю, пока выложу тут

Скрипт очень простой и прошу ногами сильно не пинать, если что не так, все-таки еще новичок.


<?php
$yandex_begin = "http://webmaster.yandex.ru/deletedurl.xml?url=";
$yandex_end = "&mode=url";
$file = "disallow.txt"; //название файла, в каждой строке полный URL
$yandex_del = "будет удален из базы Яндекса в течение нескольких дней.";
$yandex_no_del = "не может быть удален из базы Яндекса, так как он не был проиндексирован.";

$lines = file($file);
foreach($lines as $key => $val) {
$contents = '';
$val = urlencode($val);
$query = $yandex_begin . $val . $yandex_end;
$return = fopen($query, "r");
while (!feof($return)) {
$contents .= fread($return, 8192);
}
if (ereg($yandex_del, $contents)) {
echo "Документ <b>$val</b> будет удален из базы яндекса<br>";
} else if (ereg ($yandex_no_del, $contents)) {
echo "Документ <b>$val</b> не был проиндексирован<br>";
}
}
echo "<b>Работа скрипта закончена</b>";
?>
anser06
На сайте с 11.03.2006
Offline
276
#5

Для версии 0.1 неплохо. Предлагаю улучшить скрипт:

1) поскольку все удаляемые URL надо все равно предварительно запретить в robots.txt, предалагаю упростить задачу и не готовить файл disallow.txt. Лучше брать URL из robots.txt. Поэтому скрипт должен показывать только 1 строчку для ввода URL главной страницы сайта.

2) На больших файлах скрипт работает длительно и неизвестно как. Предлагаю сделать удаление порционно (по 10, 20, ... URL за раз).

Можно предоставить право выбора пользователю, сколько URL скрипт должен удалить за 1 заход (выбор: 5, 10, 15, 30, 50). После удаления этого количества скрипт может выводить информацию: "всего удалено ... URL, осталось удалить .... URL, потрачено времени ... с. Чтобы удалить следущие ... URL, нажмите здесь." Промежуточную информацию можно хранить в сессионных переменных.

Kolyaj
На сайте с 28.03.2006
Offline
69
#6
anser06:
1) поскольку все удаляемые URL надо все равно предварительно запретить в robots.txt, предалагаю упростить задачу и не готовить файл disallow.txt. Лучше брать URL из robots.txt. Поэтому скрипт должен показывать только 1 строчку для ввода URL главной страницы сайта.

Ну тут еще придется парсить выдачу яндекса для получения списка проиндексированных страниц. По robots.txt в общем случае нельзя определить какие именно страницы запрещены.

R
На сайте с 19.09.2007
Offline
36
#7

Ну задания кончились, жду еще

p.s. правда отзывов не вижу :(

anser06
На сайте с 11.03.2006
Offline
276
#8
rydx:
p.s. правда отзывов не вижу :(

Работа была сделана быстро, скрипт для удаления URL работает. Жалко, что исполнитель не захотел его улучшить. Хороший скрипт останется в портфолио и можно сделать ссылку на него (скрипт) в подписи.

Kolyaj:
Ну тут еще придется парсить выдачу яндекса для получения списка проиндексированных страниц. По robots.txt в общем случае нельзя определить какие именно страницы запрещены.

Парсить выдачу необязательно, можно просто попытаться удалить то, что запрещено в robots.txt. Если страницу нельзя удалить, т.к. она не проиндексирована, Яндекс выдаст соответствующую строчку и ничего страшного не будет.

Kolyaj
На сайте с 28.03.2006
Offline
69
#9
anser06:
Парсить выдачу необязательно, можно просто попытаться удалить то, что запрещено в robots.txt

А как вы узнаете какие страницы есть на сайте? В роботсе ведь может быть просто написано "Disallow /articles/" без перечисления конкретных страниц.

anser06
На сайте с 11.03.2006
Offline
276
#10
Kolyaj:
А как вы узнаете какие страницы есть на сайте? В роботсе ведь может быть просто написано "Disallow /articles/" без перечисления конкретных страниц.

Согласен. Но скрипт предназначен именно для удаления отдельных страниц из выдачи Яндекса, а в этом случае их всех прописывают в robots.txt.

12

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