Grattage des données de toutes les pages asp.net avec pagination AJAX implémentée

Je veux scrapper une page web contenant une liste d'utilisateurs avec des adresses, e-mail etc. la page web contient la liste des utilisateurs avec la pagination c'est à dire la page contient 10 utilisateurs lorsque je clique sur la page 2 du lien il va charger la liste des utilisateurs formulaire 2ème page via AJAX et mise à jour de la liste ainsi de suite pour tous les liens de pagination.

Site est développé en asp c'est à dire la page avec l'extension .aspx depuis je ne sais rien à propos de asp.net et comment l'asp gère la pagination AJAX et

Je suis à l'aide du simple html dom http://sourceforge.net/projects/simplehtmldom/ à la ferraille de contenir

pour les pages que les utilisateurs <=10 je n'ai pas de simuler une requête AJAX même que lorsque l'utilisateur clique sur le lien de pagination

mais pour la page d'avoir la pagination pour obtenir des données à partir d'autres pages que je suis en simulant post requête AJAX

require 'simple_html_dom.php';
$html = file_get_html('www.example.com/user_list.aspx');
$viewstate = $html->find("#__VIEWSTATE");
$viewstate = $viewstate[0]->attr['value'];
$eventvalidation        = $html->find("#__EVENTVALIDATION");
$eventvalidation        = $eventvalidation[0]->attr['value'];
$number_of_pageinations = 3;
$pageNumberCodes = array(
'ctl00$cphMainContent$rdpMembers$ctl01$ctl01',
'ctl00$cphMainContent$rdpMembers$ctl01$ctl02',
'ctl00$cphMainContent$rdpMembers$ctl01$ctl03'
); //this code is added for each page in POST  as  __EVENTTARGET 
for ($i = 0; $i < $number_of_pageinations; $i++) {
$options = array(
CURLOPT_RETURNTRANSFER => true, //return web page
CURLOPT_HEADER => false, //don't return headers
CURLOPT_ENCODING => "", //handle all encodings
CURLOPT_USERAGENT => "Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7'", //who am i
CURLOPT_AUTOREFERER => true, //set referer on redirect
CURLOPT_CONNECTTIMEOUT => 120, //timeout on connect
CURLOPT_TIMEOUT => 1120, //timeout on response
CURLOPT_MAXREDIRS => 10, //stop after 10 redirects
CURLOPT_POST => true,
CURLOPT_VERBOSE => true,
CURLOPT_POSTFIELDS => urlencode('ctl00%24scriptManager=ctl00%24cphMainContent%24ctl00%24cphMainContent%24rdpMembersPanel%7C' . $pageNumberCodes[0] . '&__EVENTTARGET=' . $pageNumberCodes[0] . '&__EVENTARGUMENT=' . '&__VIEWSTATE=' . $viewstate . '&__EVENTVALIDATION=' . $eventvalidation . "&google=" . '&ctl00%24cphMainContent%24txtZip=' . '&ctl00%24cphMainContent%24cboRadius=Exact' . '&ctl00%24cphMainContent%24txtMemberName=' . '&ctl00%24cphMainContent%24txtCity=Honolulu' . '&ctl00%24cphMainContent%24cboState=HI' . '&ctl00%24cphMainContent%24txtAddress=' . '&ctl00_cphMainContent_rdpMembers_ClientState=' . '&ctl00%24cphMainContent%24ddList=-Select%20field%20to%20sort-' . '&ctl00_cphMainContent_ddList_ClientState=' . '&ctl00_cphMainContent_rdlMembers_ClientState=' . '&ctl00_cphMainContent_ddList_ClientState=' . '&ctl00_cphMainContent_rdlMembers_ClientState=' . '&ctl00_cphMainContent_rdpMembers1_ClientState=' . '&__ASYNCPOST=true' . 'RadAJAXControlID=ctl00_cphMainContent_RadAjaxManager1')
);
$ch      = curl_init($url);
curl_setopt_array($ch, $options);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
$newHtml = str_get_html($return);
$viewstate = $newHtml->find("#__VIEWSTATE");
$viewstate = $viewstate[0]->attr['value'];
$eventvalidation = $newHtml->find("#__EVENTVALIDATION");
$eventvalidation = $eventvalidation[0]->attr['value'];
}

ce devrait résonner des données à partir de différentes pages, mais Il permet d'imprimer les données de la première page, quelqu'un peut-il m'indiquer où je suis worng et ce qui est manquant
Je ne sais pas comment l'asp gère les paginations et de la requête AJAX et qu'est-ce que __EVENTARGUMENT, __VIEWSTATE et __EVENTVALIDATION

source d'informationauteur Subodh Ghulaxe