Intereting Posts
Загрузка удаленной фотографии в загружаемую доступ запрещен для пользователя @ 'localhost' в базу данных '' Родительский объект в php Вычислять месяцы между двумя датами с использованием DateInterval без упаковки в течение года PHP – подключение к базе данных mysql с разных серверов Есть ли причина использовать ключевое слово self? NetBeans неправильно сохраняет код (все в одной строке с квадратами, где должны быть разрывы строк) Пытается передать ToDataURL более чем 524288 байт. Используя текст типа ввода Facebook, Attachment Недоступная ошибка при использовании кнопки отправки? Импорт нескольких CSV-файлов в таблицы mysql RPG – сохранение данных игрока для полукомплексной древовидной структуры Входы пользователя, очистка и дезинфекция перед отправкой на db записывает значение в «пустой тег» на PHP предотвратить перезагрузку страницы и вызвать функцию jquery при нажатии кнопки отправки Сократить числа с плавающей точкой с помощью PHP

Как получить отчеты от Amazon Affiliate

Я нашел эту библиотеку PHP-Oara https://github.com/fubralimited/php-oara в Github, и я уже настроил все.

$networkName = "Amazon"; //Ex: AffiliateWindow //Retrieving the credentials for the network $config = Zend_Registry::getInstance()->get('credentialsIni'); $configName = strtolower($networkName); $credentials = $config->$configName->toArray(); //Path for the cookie located inside the Oara/data/curl folder $credentials["cookiesDir"] = "example"; $credentials["cookiesSubDir"] = $networkName; $credentials["cookieName"] = "test"; //The name of the network, It should be the same that the class inside Oara/Network $credentials['networkName'] = $networkName; //Which point of view "Publisher" or "Advertiser" $credentials['type'] = "Publisher"; //The Factory creates the object $network = Oara_Factory::createInstance($credentials); 

Я также добавил необходимые данные в файле credentials.ini :

 ;------------Amazon (All the newtwork are available)------------ ;The user name used in Amazon associates to log in amazon.user = 'my amazon affiliate email' ;The password used in Amazon associates to log in amazon.password = 'my amazon affiliate password' ;Network we are going to log in: uk, es, us, ca, de, fr, it, jp, cn. amazon.network = 'us' 

Но я получаю следующую ошибку:

 Failed to find log in form! 

Я думал, что это просто имя формы входа в систему:

 if (!preg_match('/<form name="signIn".*?<\/form>/is', $page, $form)) { die('Failed to find log in form!'); } 

Поскольку имя в https://affiliate-program.amazon.com фактически является sign_in но когда я изменил его на то, что это не имело никакого эффекта.

Но реальная проблема в том, что переменная $page самом деле пуста. Можно ли предположить, что эта библиотека сломана или я сделал что-то неправильно с настройкой? Можете ли вы порекомендовать любую другую библиотеку, которая может сделать то же самое или, возможно, указать мне на некоторые ресурсы, которые могут помочь мне написать мою собственную библиотеку для входа на веб-сайт амазонки и получить некоторые отчеты.

Заранее спасибо!

    Я использую эту библиотеку, но я не использую credentials.ini, потому что у меня есть все учетные данные в базе данных.

    Поэтому я изменил пример / generic.php, чтобы добавить учетные данные программно:

     $email = ...; $password = ...; $network = ...; $networkName = "Amazon"; $networkType = "Publisher"; $credentials = array(); //Path for the cookie located inside the Oara/data/curl folder $credentials["cookiesDir"] = "example"; $credentials["cookiesSubDir"] = $networkName; $credentials["cookieName"] = "test"; $credentials["user"] = $email; $credentials["password"] = $password; $credentials["network"] = $network; $credentials['networkName'] = $networkName; $credentials['type'] = $networkType; //The Factory creates the object $network = Oara_Factory::createInstance($credentials); Oara_Test::testNetwork($network); 

    И я могу войти и получить доступ к данным Amazon. Возможно, с тех пор, как вы написали это сообщение, в библиотеке были некоторые обновления. Могу сказать, что теперь это работает.

    В результате я получаю:

     Total Number of payments: XX Number of merchants: XX importing from 01-08-2013 00:00:00 to 31-08-2013 23:59:59 Number of transactions: XX Number register on the overview: XX importing from 01-09-2013 00:00:00 to 30-09-2013 23:59:59 Number of transactions: XX Number register on the overview: XX importing from 01-10-2013 00:00:00 to 05-10-2013 23:59:59 Number of transactions: XX Number register on the overview: XX Import finished