Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Как забрать файл по http?

Ответить
Настройки темы
[решено] Как забрать файл по http?

Новый участник


Сообщения: 24
Благодарности: 2

Профиль | Отправить PM | Цитировать


Доброго времени.
В справке команды не нашёл. Можно ли с помощью AutoIt скачивать из интернета файлы?
Задача такая: надо забирать небольшой текстовый файл, адрес примерно такой _http://xxx.yyy.zzz/название.расширение
Браузером забирается, но может есть более элегантное решение отдельной командой?

Отправлено: 20:41, 25-03-2015

 

Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


Цитата dedmazai1870:
В справке команды не нашёл. »
Код: Выделить весь код
InetRead()
InetGet()
Кликайте по функциям.
Имя файла получить можно примерно так.
Код: Выделить весь код
$sUrl = 'http://xxx.yyy.zzz/название.расширение'
$sFile = StringTrimLeft($sUrl, StringInStr($sUrl, '/', 2, -1))
ConsoleWrite($sFile & @LF)
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:44, 25-03-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 24
Благодарности: 2

Профиль | Отправить PM | Цитировать


madmasles, InetGet не совсем то, а с InetRead получилось. Дело в том, что файл - это на самом деле ссылка на php-скрипт, и при InetRead я получаю как раз нужный результат его выполнения в окне.
Взял пример из InetRead, подставил свой адрес, всё сработало.
Не сочтите за наглость и чтобы не плодить темы, подскажите: как мне полученный текст выводить не в окно, а сохранять в файл?

Отправлено: 21:17, 25-03-2015 | #3


Аватара для Coutty

Кот Ти


Сообщения: 7318
Благодарности: 1204

Профиль | Отправить PM | Цитировать


Ну вот InetGet как раз и сохраняет файл на диск.

Отправлено: 21:26, 25-03-2015 | #4


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


Цитата dedmazai1870:
как мне полученный текст выводить не в окно, а сохранять в файл? »
Код: Выделить весь код
FileOpen()
FileWrite()
FileClose()

Отправлено: 21:29, 25-03-2015 | #5


Новый участник


Сообщения: 24
Благодарности: 2

Профиль | Отправить PM | Цитировать


Coutty, при InetGet я получаю в файле такой результат.
Код: Выделить весь код
<html><body><h1>It works!</h1></body></html>
А при InetRead в окне выводится результат работы скрипта.

Отправлено: 21:29, 25-03-2015 | #6


Новый участник


Сообщения: 24
Благодарности: 2

Профиль | Отправить PM | Цитировать


Хотел заменить
Код: Выделить весь код
MsgBox(4096, "", "Прочитанных байт: " & $nBytesRead & @CRLF & @CRLF & BinaryToString($sData))
на что-то подобное
Код: Выделить весь код
FileWrite($hFile, BinaryToString($sData))
пока не получается. Буду пробовать дальше. Если есть идеи, как MsgBox заменить на FileWrite - буду признателен.
Спасибо за помощь.

Отправлено: 21:47, 25-03-2015 | #7


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


dedmazai1870,
Код: Выделить весь код
Local $sUrl = 'http://Ссылка', $bRead, $sFile = @ScriptDir & '\test.txt', $hFile

$bRead = InetRead($sUrl, 17)
If @error Then Exit 1
$hFile = FileOpen($sFile, 16 + 2)
If $hFile = -1 Then Exit 2
FileWrite($hFile, $bRead)
FileClose($hFile)
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:06, 25-03-2015 | #8


Новый участник


Сообщения: 24
Благодарности: 2

Профиль | Отправить PM | Цитировать


madmasles, это чудо! Огромное спасибо!

Отправлено: 00:34, 26-03-2015 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Как забрать файл по http?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как получить только исхоный код страницы по HTTP (без картинок и тд - только текст)? evg64 AutoIt 3 10-01-2010 01:17
Прочие БД - [решено] как забрать базу с умершей mysql? ~Lyusi~ Программирование и базы данных 1 27-11-2009 16:37
Установка - Как установке забрать файлы из харда, а не с диска? city24 Microsoft Windows 2000/XP 6 21-11-2009 19:53
как сделать переадресацию с http://***.** на http://www.***.** ? Vlad Drakula Вебмастеру 8 19-07-2006 09:57
Можно ли при помощи PHP скачать файл по ссылке вида http://xxxx? (+) Igor_I Вебмастеру 2 12-09-2005 21:31




 
Переход