$browser->set_referer

Все вопросы касающиеся использования
программы можно задать здесь
Аватара пользователя
Support
Site Admin
Сообщения: 946
Зарегистрирован: 10 апр 2009, 17:45
Контактная информация:

Re: $browser->set_referer

Сообщение Support » 28 окт 2014, 12:22

Благодаря усилием нашего пользователя , за что ему большое спасибо.
Выкладываю тут рабочий вариант кода для полноценной работы функции $browser->set_referer.

Решение проблемы так http://humanemulator.net/objects/WEB/br ... eferer.php
Как делал я (гнал траф на ppc):
1. Ставим WAMPSERVER (оно работает в отличии от остальных)
2. Добавляем в hosts строки с рефами типа "ya.ru 127.0.0.1" и тд
3. Навигейтим и видим страницу вампа а в адресной строке адрес рефа.
4. Далее как по ссылке со справки.
Имеем рефа, скорость и счастье, при желании можно переписать пхпшку вампа на один анкор.
hosts легко редактируется функцией $textfile

Что то вроде кода для разных ситуаций:
/////////////////////////////////////////////////////////////////////////////////////////////////////
// читаем хост
$file = "C:\\Windows\\System32\\drivers\\etc\\hosts";
$f = $textfile->read_file($file,60,$encoding="windows-1251");
// допустим реф
$ref = $textfile->get_line_from_file($file,true,$line,60);
$c_ref = "127.0.0.1." ".$ref."\r\n";
// если новый добавим в конец файла
$textfile->add_string_to_file($file,$c_ref,60);
// в редком случае если надо навигейтить на рефа варианта два
// 1 чистим за собой рефа из hosts
// 2 перед каждым навигейтом проверяем наличие урла в хосте типа так

// файл с навигейтами
$nav = $textfile->get_line_from_file("C:\\nav.txt",false,0,60);
// приводим
$f_nav = "127.0.0.1"." ".$nav;
echo $f;
// разбиваем строки
$u = explode("\n",$f);
print_r ($u);
// считаем строки
$c_u = count($u);
echo $c_u;
// в цикле меряем левенштейна и убираем нужное
// (не убирает дубликаты)
for ($i = 0; $i < $c_u; ++$i) {
$t_lev = levenshtein ( $f_nav, $u[$i] );
if ($t_lev == 0) {
$u[$i] = "";
$textfile->write_file($file,"",$timeout=COMMAND_TIME,$create_folders=false);
for ($i = 0; $i < $c_u; ++$i) {
$textfile->add_string_to_file($file,$u[$i]."\n",$timeout=COMMAND_TIME);
}
}
}

$f = $textfile->read_file($file,60,$encoding="windows-1251");
echo $f;
//////////////////////////////////////////////////////////////////////////////////////////////////////
Бывает что нужно ставить строки в нескольких форматах-
127.0.0.1 ya.ru
127.0.0.1 http://www.ya.ru

Как работать с файлом это уже личные проблемы каждого, в многопоточном режиме наверное целесообразно вынести скрипт работы с хостом отдельно (можно на тот же вамп) и передавать ему данные через файл. Можно один раз написать вставлялку-подтиралку и юзать вместо $browser->set_referer.

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

Ответить