由于 Wikimapia 在更新密钥限制方面存在问题,我想通过 cURL 自动生成它们,然后将它们保存到数据库中。我该如何实施?我在这样的网站上被授权
// URL скрипта авторизации
$login_url = 'http://wikimapia.org/user/login/';
// параметры для отправки запроса - логин и пароль
$post_data = 'username=LOGIN&pw1=PASSWORD&_time=3306';
// создание объекта curl
$ch = curl_init();
// используем User Agent браузера
$agent = $_SERVER["HTTP_USER_AGENT"];
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
// задаем URL
curl_setopt($ch, CURLOPT_URL, $login_url );
// указываем что это POST запрос
curl_setopt($ch, CURLOPT_POST, 1 );
// задаем параметры запроса
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
// указываем, чтобы нам вернулось содержимое после запроса
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// в случае необходимости, следовать по перенаправлени¤м
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
/*
Задаем параметры сохранени¤ cookie
как правило Cookie необходимы для дальнейшей работы с авторизацией
*/
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
当我发布 Wikimapia 请求时:
http://wikimapia.org/api/?action=create_key_process&readed_eula=true&api_use=1&site_name=&application_name=333&platform=333
我收到一个错误您应该阅读并同意 EULA 的规定。 如何正确传递复选框标志?
<label for="readed_eula" class="checkbox">
<input type="checkbox" id="readed_eula" name="readed_eula" value="true"> I have read Wikimapia Terms of Service
</label>