Не могу получить URL с помощью curl - PullRequest
4 голосов
/ 05 июня 2011

При попытке получить URL http://www.kat.ph/search/snow-patrol-shut-your-eyes/?categories%5B%5D=music используя curl я получаю сообщение об ошибке

curl: (3) [globbing] недопустимый символ в спецификации диапазона в позиции 65

Почему это так? хотя [кажется вполне допустимым символом в адресной строке браузера, как я могу получить тот же URL в curl?

Ответы [ 3 ]

8 голосов
/ 10 июня 2011

Вы можете использовать опцию -g, чтобы запретить скручивание себя.Затем он передаст URL с [] на сервер как есть.

4 голосов
/ 05 июня 2011

curl <a href="http://www.kat.ph/search/snow-patrol-shut-your-eyes/?categories%5B%5D=music" rel="nofollow">http://www.kat.ph/search/snow-patrol-shut-your-eyes/?categories%5B%5D=music</a>

отлично работает для меня.Это на самом деле то, что вы используете?Или у вас [в вашей строке скручивания?

Обновление

Да, я получаю ту же ошибку на curl <a href="http://www.kat.ph/search/snow-patrol-shut-your-eyes/?categories" rel="nofollow">http://www.kat.ph/search/snow-patrol-shut-your-eyes/?categories</a>[]=music.Ваш браузер молча кодирует [] для вас, когда он делает запрос (браузеры позволяют пользователям быть ленивыми).cURL ожидает, что вы сможете кодировать самостоятельно, поэтому сначала необходимо кодировать такие символы, как [], пробел и т. д.Посмотрите на этот инструмент для кодирования или декодирования URL http://meyerweb.com/eric/tools/dencoder/

1 голос
/ 05 июня 2011

Вы можете экранировать символы [и] следующим образом \[ и \]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...