CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 2 of 2
  1. #1
    Join Date
    Feb 2011
    Posts
    1

    Help with cURL script for yahoo login

    i am new to curl .and i m trying to create create a script to log into yahoo and click the confermation link in emails.
    but i am stuck witht he login process only
    i made the code below . but still i cant make it work. the problem is yahoo is implementing a captcha challange for this kind of automated headers. do you have any idea ho to make it work again without alerting the captcha challange ?

    the header i caught through the livehttp header is as follows:

    Content-Length: 347
    .tries=1&.src=ym&.md5=&.hash=&.js=&.last=&promo=&.intl=in&.bypass=&.partner=&.u=4ls6cr96lbs8e&.v=0&.challenge=W9w31pCrbdazCcY4mH41fVsyxwd8&.yplus=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=http%3A%2F%2Fmail.yahoo.com&.pd=ym_ver%3D0%26c%3D%26ivt%3D%26sg%3D&pad=1&aad=1&login=myyahooid&passwd=mypassword&.persistent=y&.save=&passwd_raw=


    PHP Code:
    <?php

        
        $authUrl    
    "https: //login.  yahoo  .   com/config/login?";
        
    $userAgent  "Mozilla/5.0 (Windows NT 5.1; rv:2.0b11) Gecko/20100101 Firefox/4.0b11";
        
    $referer    "http  :  //  my  .  yahoo  .  com";
        
    $login      "userid";
        
    $password   "password";
        
    $numPostData 22;
        
    $cookieFileJar  "ycookie.txt";
        
    $cookie 0;
        
    $postData ".tries=1&.src=ym&.md5=&.hash=&.js=&.last=&promo=&.intl=in&.bypass=&.partner=&.u=4ls6cr96lbs8e&.v=0&.challenge=W9w31pCrbdazCcY4mH41fVsyxwd8&.yplus=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=http%3A%2F%2Fmail.yahoo.com&.pd=ym_ver%3D0%26c%3D%26ivt%3D%26sg%3D&pad=1&aad=1&login=$login&passwd=$password&.persistent=y&.save=&passwd_raw=" ;

        
    $ch curl_init();
        
    curl_setopt($chCURLOPT_USERAGENT$userAgent);

        
    // Set the referrer
        
    curl_setopt($chCURLOPT_REFERER$referer);

        
    // Set the authentication url
        
    curl_setopt($chCURLOPT_URL$authUrl);

        
    // Set number of post fields
        
    curl_setopt($chCURLOPT_POST$numPostData);

        
    //Set post data in key=value pair such as login=yourusername
        
    curl_setopt($chCURLOPT_POSTFIELDS$numPostData);

        
    //Set filename for storing cookie information
        
    curl_setopt($chCURLOPT_COOKIEJAR$cookieFileJar);

        
    //Set ffilename for checking the stored cookie information
        
    curl_setopt($chCURLOPT_COOKIEFILE$cookieFileJar);

        
    //Set option for cookie
        
    curl_setopt($chCURLOPT_COOKIE$cookie);
     
     
    //set this to output the result as string and not output directly ot browser
        
    curl_setopt($chCURLOPT_RETURNTRANSFERTRUE);

     
    //set this value to 1 if you want to redirect to the url you provided as service url
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION0);
     
     
    //Set this option if you do not want to verify ssl
        
    curl_setopt($chCURLOPT_SSL_VERIFYHOST0);
     
     
    //set this option if you do not want to verify peer's certificate
        
    curl_setopt($chCURLOPT_SSL_VERIFYPEER0);
     
     
    //now execute the curl
        
    $res curl_exec($ch);
         echo 
    $res;
     
    //check if the username and password is valid
        
    if ((preg_match("/invalid/i"$res)) || (preg_match("/not yet taken/i"$res))) {
            echo 
    "Invalid Login";
        }
        else {
      
    //if  CURLOPT_FOLLOWLOCATION is set to 1 then after logging in successfully user is directed to url that is specified as service url
            
    echo "Logged In";
        }
    ?>

    then i have to work for clicking confermation links in mails. please suggest me some ways.i would be very grateful to you

  2. #2
    Join Date
    May 2002
    Posts
    10,943

    Re: Help with cURL script for yahoo login

    Good, so you know that Yahoo security is working. Site's implement captcha to keep hackers from using automated logins and brute force attacks. And, there are probably dozens of reasons as to why Yahoo would require a captcha for specific logins.

    Why don't you look near the bottom of this Experts Exchange post.
    If the post was helpful...Rate it! Remember to use [code] or [php] tags.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured