Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Загрузка страницы с помощью ruby, Скачивание web-страниц  
:(
    Опции темы
Rname
Дата 20.4.2010, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 20.1.2010

Репутация: нет
Всего: нет



Такая пробема: есть код - см. ниже 

Код

array_html = ["about.php", "index.html", "index.htm", "index2.htm", "firefox"]                     #
index_of_array_html = 0        

puts "enter url"
var_puts = gets         #или лучше gets.chop  ?

while        index_of_array_html != array_html.size
                                                    begin                                              
            var = array_html[index_of_array_html]  
                     
            puts var
            index_of_array_html = index_of_array_html + 1
        
                require 'open-uri'                                                                 
                File.open('D:\\' + 'AWEBScan\\' + var + '.htm', 'a'){ |file|                                  
                file.write open('http://' + var_puts + '/' + var).read                              
                }                                                                                 
                                                   rescue    
                                                    
                                                    File.delete('D:\\' + 'AWEBScan\\' + var1 + '.htm')
                                                    retry
                                                    end        
end


- когда я пишу в строчке -   file.write open('http://' + var_puts + '/' + var).read  начальный url, например www.google.ru, полностью, 
т.е. file.write open('http://www.google.ru' + var).read 
то проблем нет и код работает. Но когда я пишу так, как здесь - с помощью 2х, а не 1 переменной, то происходить следующее:
а) либо страницы не скачиваются вообще.
б) либо скачиваются стр. которые есть, а остальные становятся такие же по размеру и содержанию, даже если их нет вообще.
Не могу понять в чем ошибка. В чем может быть проблема?
И второе - м.б. есть другие способы скачивания веб-страниц (в частности, меня интересует, чтобы директории м.б. брать из массива).
Заранее благодарю за ответы.

PM MAIL   Вверх
source777
Дата 27.4.2010, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Rname @  20.4.2010,  17:41 Найти цитируемый пост)
В чем может быть проблема?

К.О.: в том что gets возвращает введённую строку вместе с переводом строки.

Цитата(Rname @  20.4.2010,  17:41 Найти цитируемый пост)
в частности, меня интересует, чтобы директории м.б. брать из массива

И как это относится к скачиванию страниц? Генерируй нужные url-ы как угодно...
Только проверяй, что ты там нагенерировал  smile 
Код

url = 'http://' + var_puts + '/' + var
puts url



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Rname
Дата 29.4.2010, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 20.1.2010

Репутация: нет
Всего: нет



Цитата(source777 @ 27.4.2010,  21:42)
Цитата(Rname @  20.4.2010,  17:41 Найти цитируемый пост)
в частности, меня интересует, чтобы директории м.б. брать из массива

И как это относится к скачиванию страниц? Генерируй нужные url-ы как угодно...
Только проверяй, что ты там нагенерировал  smile 
Код

url = 'http://' + var_puts + '/' + var
puts url

собственное в моем случае - напрямую  smile 
по поводу первого вопроса: где-то можно посмотреть др. способы получения вводимых данных? (это чтобы не заводить новую тему) 
PM MAIL   Вверх
source777
Дата 29.4.2010, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Rname @  29.4.2010,  10:39 Найти цитируемый пост)
где-то можно посмотреть др. способы получения вводимых данных?

а зачем, у тебя в комментарии вполне себе рабочий вариант, с chop.

Цитата(Rname @  29.4.2010,  10:39 Найти цитируемый пост)
собственное в моем случае - напрямую  smile

Скорее в твоём сознании, а не в твоём случае. Т.к. генерация URL-ов и скачивание веб-страниц вообще никак не связанные задачи.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Ruby: Общие вопросы"
source777
  • С чего начать? начинаем
  • Ссылки на полезные ресурсы смотрим тут
  • Обязательно следуйте правилам Vingrad.
  • Пожалуйста, прочитайте рекомендации по работе в форуме и навигации по Vingrad.
  • Для вставки кодов Ruby используйте тег: [code=ruby]код[/code]. Когда в будущем подсветка синтаксиса для Ruby будет реализована, весь исходных код преобразится.
  • Используйтe чекбокс "Транслит" (возле кнопок кодов), если у Вас нет русских шрифтов.
  • Помните, для каждого вопроса должна быть своя тема.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Ruby: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0697 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.