Что нового

[Сеть, интернет] IE and Autoit v3. Загрузка файла с сайта

warwar52

Новичок
Сообщения
13
Репутация
0
Здравствуйте! Мне нужна ваша помощь. Вот, например, есть такой сайт:http://xknigi.ru/book/17841_golovolomka.html
где можно скачать книгу в формате fb2. Нужно написать код так, чтобы автоматически зашел в этот сайт и нажал на кнопку "FB2". Спасибо!
 

hedji

Продвинутый
Сообщения
409
Репутация
92
Нужно разово получить один заранее известный файл или обойти все страницы сайта и выкачать все доступные файлы?
Если разово:
Код:
InetGet("http://xknigi.ru/images/com_ncatalogues/nc_fb2/17841/%5Bgolovo%5Dlomka.fb2.zip", "D:\test.zip", 1)
 
Автор
W

warwar52

Новичок
Сообщения
13
Репутация
0
На самом деле, не одноразово. Это примерный сайт. В моем сайте очень много файлов, которые нужно выкачать. Вот как написать код, чтобы и "fb2", и "epub" выгрузились автоматически в определенную папку?
 

hedji

Продвинутый
Сообщения
409
Репутация
92
Примерно так, осталось прикрутить обход всех страниц сайта и парсинг epub ссылок:

Код:
$html = InetRead("http://xknigi.ru/book/17841_golovolomka.html", 1) ;читаем исходный код страницы
$html = BinaryToString($html, 4)
;ConsoleWrite($html)
$fblinks = StringRegExp($html, "href=(.*fb2.*.)>fb2<", 3) ;находим все линки на FB2
If IsArray($fblinks) Then
	For $i In $fblinks
		ConsoleWrite($i & @CRLF)
		$filename = StringSplit($i, "/")
		$filename = $filename[UBound($filename)-1]
		$filename = StringReplace($filename, "%5", "")
		$filename = StringReplace($filename, "'", "") ;создаем название файлу
		ConsoleWrite($filename)
		$link = StringReplace($i, "'", "")
		InetGet($link, "D:\" & $filename, 1) ;качаем файл
	Next
EndIf
 
A

Alofa

Гость
OffTopic:
warwar52 сказал(а):
... Мне нужна ваша помощь...
И поэтому вы решили поделиться с нами чем-то полезным в разделе
» Общий раздел по AutoIt » Примеры и рабочие проекты » Полезняшки (Модератор: Garrett) »
форума. :rofl:
 
Верх