Link to home
Start Free TrialLog in
Avatar of peterade
peterade

asked on

regular expression

hi guys., i am building currency converter with php. i need to scrape of the currency codes and rates from xe.com or bloomberg website. has any one got any idea on which php script can scrape the data and output the currency codes and rates?

thanks in advance
Avatar of Steve Bink
Steve Bink
Flag of United States of America image

Why reinvent the wheel?  Have you tried:

http://www.google.com/#q=currency+converter+web+service

Why don't use this: http://www.xe.com/ucc/#? Here you can customize it to include it in your site: http://www.xe.com/ucc/customize.php

Not sure about Bloomberg, but you might want to see this page before you spend much time on the project:
http://www.xe.com/errors/noautoextract.htm
@Ray_Paseur

Hmm...  I did not realize that. I retract my previous comment then. Thank you Ray_Paseur for keeping me honest  :)
ASKER CERTIFIED SOLUTION
Avatar of Ray Paseur
Ray Paseur
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thank you _alias99  :)
Avatar of peterade
peterade

ASKER

-
hi guys . i am building a currency converter with php. i managed to scrape the currency rates from bloomberg. i have got an array of rates outputed. can someone teach me how to input the array of rates into a database.

steps
i1) i know how to connect to a database
2) select a the table.
3) i need the script to store the array data into a table.
pls help me guys. its really urgent!!!!!!!!!!!!!!!!!!!!!!!!!!!!

class config {


    //variable declarations

    var $content;
    var $exch_rates = array();
    var $mysql_host, $mysql_user, $mysql_pass, $mysql_db, $mysql_table;

    // getting and scraping data from bloomberg
    function config() {
        $this->mysql_host = 'localhost';
        $this->mysql_user = 'root';
        $this->mysql_pass = 'code';
        $this->mysql_db = 'converter';
        $this->mysql_table = 'currencies';
        $this->exch_rates = $rates;
        $this->content = $file;
        $this->rates = $exchangerates;



        if (!$file = file_get_contents('http://www.bloomberg.com/personal-finance/calculators/currency-converter')) {
            // generate error request from xml file
            echo'error';
        } else {
            $cur = array('ADP', 'AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'ATS', 'AUD', 'AWG', 'AZM', 'ATS', 'AZM', 'AZN', 'BAM', 'BBD', 'BDT'
                , 'BEF', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLF', 'CLP', 'CNY', 'COP',
                'CRC', 'CUP', 'CVE', 'CYP', 'CZK', 'DEM', 'DJF', 'DKK', 'DOP', 'DZD', 'ECS', 'EEK', 'EGP', 'ERN', 'ESP', 'ETB', 'EUR', 'FIM', 'FJD', 'FRF',
                'GBP', 'GEL', 'GHC', 'GHS', 'GIP', 'GMD', 'GNF', 'GRD', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'IEP', 'ILS', 'INR', 'IQD',
                'IRR', 'ISK', 'ITL', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP'
                , 'LKR', 'LRD', 'LSL', 'LTL', 'LUF', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MTL', 'MUR', 'MVR',
                'MWK', 'MXN', 'MYR', 'MZM', 'MZN', 'NAD', 'NGN', 'NIO', 'NLG', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK'
                , 'PHP', 'PKR', 'PLN', 'PTE', 'PYG', 'QAR', 'ROL', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SDR', 'SEK', 'SGD', 'SHP', 'SIT',
                'SKK', 'SLL', 'SOS', 'SRD', 'SRG', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'THO', 'TJS', 'TMM', 'TND', 'TOP', 'TRL'
                , 'TRY', 'TTD', 'TWD', 'TZS', 'UAH', 'UDI', 'UGX', 'USD', 'UYU', 'UZS', 'VEB', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XAG', 'XAU', 'XCD', 'XEU'
                , 'XOF', 'XPD', 'XPF', 'XPT', 'YER', 'ZAR', 'ZMK', 'ZWD', 'ZWR');




            for ($i = 0; $i < count($cur); $i++) {
                preg_match("/price\['$cur[$i]:\S*\s=\s(\S*);/", $file, $out);


                echo $cur[$i], '=', $out[1], ',.... ';
            }
            $conn = mysql_connect($this->mysql_host, $this->mysql_user, $this->mysql_pass);
            $rs = mysql_select_db($this->mysql_db);



// i need a script to insert $ CUR  and $ out into my database.
pls help me


        }
    }

}
This question was specifically about obtaining the conversion rates, and that issue was resolved.  You should open a new question for your new question.