Страница 1 из 2

$browser->clear_cookies("") работает?

Добавлено: 30 май 2010, 01:49
wal
сабж...

явное указание домена тоже не работает...

версия 4.0.10


еще баг
при удаление скрипта, не обновляется окно редактора, отображается код удаленного скрипта, если перейти на другие скрипт, окно редактора обновляется...

еще
логи не ведутся, установка и снятие галочек в настройках не влияет на логи...

пора вам нанимать тестеров, очень много багов.

Добавлено: 30 май 2010, 11:16
bigfozzy
насчет тестеров, уже тестили и не один раз, видать пропустили ....

насчет багов:

- логи проверили - ведутся все, можно посмотреть их через меню отладка, если включить в их в диалоге настроек или в проводнике
- они находятся по \7010\commandlog.txt (7010 - номер порта)

- насчет удаления, спасибо - мы исправим это в ближайшей версии

- и насчет куков тоже все проверили, все очищается, вот пример скрипта:

Код: Выделить всё

<?php
// The following code is required to properly run XWeb Human Emulator
require("../../../Templates/xweb_human_emulator.php");

// перейдем в рамблер
$browser->navigate("http://mail.rambler.ru");
$browser->wait(1);

// залогинимся в рамблер
$input->set_value_by_number(0,"cocos1980");
$input->set_value_by_number(1,"sobaka2007");
$button->click_by_number(0);
$browser->wait(1);

// перейдем в яндекс
$browser->navigate("http://ya.ru");
$browser->wait(1);

// перейдем в рамблер - логинимся по кукам
$browser->navigate("http://mail.rambler.ru");
$browser->wait(1);

// перейдем в яндекс
$browser->navigate("http://ya.ru");
$browser->wait(1);

// очистим все куки
$browser->clear_cookies("");
$browser->recreate();
sleep(5);

// перейдем в рамблер - логина нет
$browser->navigate("http://mail.rambler.ru");
$browser->wait(1);

// Quit
$app->quit();
?>
возможно у вас какая то другая ситуация, если можно опишите сюда или в саппорт подробнее - мы исправим. Спасибо

Добавлено: 30 май 2010, 15:31
bigfozzy
Перерисовку при удалении скрипта на текущей закладке исправили.

Добавлено: 30 май 2010, 15:53
oneer
у меня куки нормально удаляются

Добавлено: 30 май 2010, 20:11
wal
логи заработали после того как я ручками создал папку 7010...
автоматом она не создается?

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

как быть?

Добавлено: 30 май 2010, 21:25
bigfozzy
для гарантированой очистки куков в скрипте надо использовать:

app->restart
или
browser->recreate

а насчет папки порта - я проверю и исправлю, спасибо.

Добавлено: 30 май 2010, 22:05
wal
browser->recreate не помогает..

app->restart накладно делать каждый раз..

яндекс похоже вешает сессионные куки...
их можно как-нить удалять без перезапуска хумана?

хорошо бы было удалять куки еще и по имени...
а не только по домену.

Добавлено: 30 май 2010, 22:26
bigfozzy
попробуем что нибудь придумать

Добавлено: 09 июл 2010, 22:16
Germ
bigfozzy писал(а):для гарантированой очистки куков в скрипте надо использовать:

app->restart
или
browser->recreate
...
browser->recreate не помогает. Также не помогает browser->set_cookie_for_url. Вот скрипт, логинится в 1 акк на мэйл.ком, чистит куки и логинится во второй. При этом появляется "Signing out AOL network", что означает, что куки не вычистились.

Код: Выделить всё

<?php
// The following code is required to properly run XWeb Human Emulator
$xhe_host ="127.0.0.1:7010"; 
require("../Templates/xweb_human_emulator.php");

$login = array('testing0001','testing0002');
$password =array('testing10001','testing20002');

	$browser->clear_cookies("");
	$browser->recreate();
	$browser->navigate('https://www.mail.com/login.aspx?lang=en');

	$browser->wait_for(60,2);
	$input->set_value_by_name('login',$login[0]);
	$input->set_value_by_name('password',$password[0]);
	$button->click_by_name('btnSignIn');

$browser->wait(1);
sleep(30);

echo "<br>===============================<br>COOKIES AFTER 1st login<BR>";
echo $browser->get_cookie_for_url("https://www.mail.com/login.aspx","");
echo "<br>";

echo "Trying to set cookies<br>"; // пытаемся ставить куки по имени
$cookies = array('s_sess','TimeStamp; TimeStampPage; .VSI_ASPXAUTH','Auth','Context','LTState','loginName2','mmc_auth','s_pers','userdet');

foreach($cookies as $cookie){
	echo "setting name $cookie ->".$browser->set_cookie_for_url("https://www.mail.com/login.aspx",$cookie,"a").'<br>';
sleep(1);
}
// получить куки для заданного urla
echo "<br>===============================<br>COOKIES after trying to set them<BR>";
echo $browser->get_cookie_for_url("https://www.mail.com/login.aspx","");


	$browser->clear_cookies("");
$browser->recreate();

echo "<br>===============================<br>COOKIES AFTER CLEANUP<BR>";
sleep(5);
echo $browser->get_cookie_for_url("https://www.mail.com/login.aspx","");

echo "<br>";
	$browser->navigate('https://www.mail.com/login.aspx?lang=en');
	$browser->wait_for(60,2);
echo "<br>===============================<br>COOKIES after secondary login<BR>";
echo $browser->get_cookie_for_url("https://www.mail.com/login.aspx","");

	$input->set_value_by_name('login',$login[1]);
	$input->set_value_by_name('password',$password[1]);
	$button->click_by_name('btnSignIn');
echo "<br>===============================<br>COOKIES after LOGIN<BR>";
echo $browser->get_cookie_for_url("https://www.mail.com/login.aspx","");

// Quit
$app->quit();
?>
выводит содержимое куков в различных точках скрипта, старые куки как были так и остались.

Добавлено: 21 авг 2010, 03:04
satih
С куками когда ничего не помогает, посмотрите также в сторону флеш кукисов, иногда даже после рестарта браузера сайт знает кто есть кто.
А в принципе геморно, но куки можно через raw чистить, просто срезать их с хедера.

Добавлено: 12 окт 2010, 16:29
bigfozzy
будем разбираться

Добавлено: 18 окт 2010, 20:49
nick1
Да уж, посторайтесь, важный момент!

Добавлено: 19 окт 2010, 10:52
bigfozzy
сделано, в 4.0.13, спасибо за код одному хорошему человеку, пожелавшему сохранить инкогнито :wink: , сегодня версия будет обновлена.

и спасибо за напоминание )

после проверки что все оки - тему можно закрывать, я думаю ?

теперь рестарт необязателен для очистки тех куков, с которыми раньше были проблемы, если что-то будет - отпишитесь, плиз, сделаем

Добавлено: 19 окт 2010, 20:24
bigfozzy
вроде все хорошо работает и чистит - тему закрываю ?

Добавлено: 01 ноя 2010, 05:18
satih
чистка кук стала в разы лучше, но некоторые куки остаются, причем кседант их не видит, но если посмотреть снифером, куки передаются.

пример скрипта:

Код: Выделить всё

<?php
// The following code is required to properly run Xedant Human Emulator
require("../../Templates/xweb_human_emulator.php");

// чистим куки
ClearTrails();
// проверяем куки
echo $browser->get_cookie().'<br>--------------------------------------<br>';
// переходим на сайт
$browser->navigate('https://www.google.com/accounts');
$browser->wait();
// проверяем куки
echo $browser->get_cookie().'<br>--------------------------------------<br>';
// чистим куки
ClearTrails();
// проверяем куки
echo $browser->get_cookie().'<br>--------------------------------------<br>';
// переходим на сайт
$browser->navigate('https://www.google.com/accounts');
$browser->wait();
// проверяем куки
echo $browser->get_cookie().'<br>--------------------------------------<br>';

$app->quit();


function ClearTrails(){
	global $browser;
	// переходим на пустую страницу
	$browser->navigate('about:blank');
	$browser->wait();
	// чистим куки
	$browser->clear_cache();
	$browser->clear_cookies('');
}
?>
при первом запросе на гугл выставляется кукис GALX, после очистки кук кседант не видит этот кукис, но при втором переходе снифер ее показывает

хедер из снифера при втором переходе:
GET /accounts HTTP/1.1
Accept: */*
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; HbTools 4.8.0)
Accept-Encoding: gzip, deflate
Accept-Language: ru
Host: www.google.com
Connection: Keep-Alive
Cookie: GALX=3fHQ_-i-KAI; GoogleAccountsLocale_session=ru