jak zalogowac sie na strone, a pozniej pobrac inne dane (jakie sa dostepne tylko po zalogowaniu) z podstrony?
Zmontowalem cos takiego, ale nie dziala:
Cytat
<?php
$x = array(
'url' => 'http://www.symultana.org/users/login',
'referer' => 'http://www.symultana.org/users/search/&where=IFdIRVJFIGBzdGF0dXNgPD4y&page=1',
'post' => 'user_login=andypsv@xernt.com&user_pass=ZMIENIC',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $x['url']);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, isset($z['post']));
if(isset($x['post'])) curl_setopt($ch, CURLOPT_POSTFIELDS, $x['post'] );
if(isset($x['refer'])) curl_setopt($ch, CURLOPT_REFERER, $x['refer'] );
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
$result=curl_exec($ch);
if($result === false)
{
echo '<br/>Curl error: '.curl_error($ch);
curl_close($ch);
exit;
}
var_export($result);
curl_close($ch);
?>
$x = array(
'url' => 'http://www.symultana.org/users/login',
'referer' => 'http://www.symultana.org/users/search/&where=IFdIRVJFIGBzdGF0dXNgPD4y&page=1',
'post' => 'user_login=andypsv@xernt.com&user_pass=ZMIENIC',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $x['url']);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, isset($z['post']));
if(isset($x['post'])) curl_setopt($ch, CURLOPT_POSTFIELDS, $x['post'] );
if(isset($x['refer'])) curl_setopt($ch, CURLOPT_REFERER, $x['refer'] );
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
$result=curl_exec($ch);
if($result === false)
{
echo '<br/>Curl error: '.curl_error($ch);
curl_close($ch);
exit;
}
var_export($result);
curl_close($ch);
?>
Moglby ktos to poprawic?
-----------------------------------------------------------------------------------
Nie pobiera tresci z referrer, bo nie jest zalogowany.
Zrobilem konto, oto skrypt (z danymi):
Kod
<?php
$x = array(
'url' => 'http://www.symultana.org/users/login',
'referer' => 'http://www.symultana.org/users/search/&where=IFdIRVJFIGBzdGF0dXNgPD4y&page=1',
'post' => 'user_login=andypsv@gmail.com&user_pass=test12345',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $x['url']);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, isset($x['post']));
if(isset($x['post'])) curl_setopt($ch, CURLOPT_POSTFIELDS, $x['post'] );
if(isset($x['refer'])) curl_setopt($ch, CURLOPT_REFERER, $x['refer'] );
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
$result=curl_exec($ch);
if($result === false)
{
echo '<br/>Curl error: '.curl_error($ch);
curl_close($ch);
exit;
}
var_export($result);
curl_close($ch);
?>
$x = array(
'url' => 'http://www.symultana.org/users/login',
'referer' => 'http://www.symultana.org/users/search/&where=IFdIRVJFIGBzdGF0dXNgPD4y&page=1',
'post' => 'user_login=andypsv@gmail.com&user_pass=test12345',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $x['url']);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, isset($x['post']));
if(isset($x['post'])) curl_setopt($ch, CURLOPT_POSTFIELDS, $x['post'] );
if(isset($x['refer'])) curl_setopt($ch, CURLOPT_REFERER, $x['refer'] );
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
$result=curl_exec($ch);
if($result === false)
{
echo '<br/>Curl error: '.curl_error($ch);
curl_close($ch);
exit;
}
var_export($result);
curl_close($ch);
?>
Prosze o pomoc, dziekuje.
Poprawilem o ukryte. Co zrobic by dzialalo?
<?php 'url' => 'http://www.symultana.org/users/login', 'referer' => 'http://www.symultana.org/users/search/&where=IFdIRVJFIGBzdGF0dXNgPD4y&page=1', 'post' => 'user_login=andypsv@gmail.com&user_pass=test12345&screw_you_curl=back_off&screw_you_curl2=back_off_jerk&link=/users/login&user_login=x', ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $x['url']); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_AUTOREFERER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); $result=curl_exec($ch); if($result === false) { curl_close($ch); exit; } curl_close($ch); ?>