2013-09-18 3 views
1

Я пытаюсь отменить данные с веб-сайта с URL-адресами, которые следуют за определенным шаблоном. В частности, они что-то вроде этого:Скребка нескольких страниц с помощью Curl

http://msn.com/21-05-2013/data 
http://msn.com/22-05-2013/data 

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

Я просмотрел официальную документацию и Stackoverflow, но не нашел ничего прямого.

ответ

0

Возможно, вам понадобится цикл for в bash, а не что-то в curl. Нечто подобное было бы перебрать все дни в мае 2013 года:

for day in $(seq 1 1 31); do 
    url=$(printf "http://msn.com/%02d-05-2013/data" $day) 
    curl $url 
done 
1

Вы можете использовать расширение числа Баша, чтобы получить все соответствующие адреса.

т.д .:

http://msn.com/{01..31}-{01..12}-2013/data 

будет расширяться на все даты 2013 года (с некоторыми недопустимыми датами, как 31-02)

И OFC для более четких границ:

http://msn.com/{15..28}-02-2013/data http://msn.com/{1..14}-03-2013/data 
Смежные вопросы