2014-02-01 2 views
0

Я надеялся получить некоторую легкую информацию для своего приложения для средств массовой информации, и я хотел бы очистить некоторые веб-сайты. Я ранее строил веб-браузеры с Nokogiri и Evereverize gem (ruby).Webcrawler/Webposter bot?

Однако на этот раз я хотел бы получить информацию, которая сканируется и помещается на другой сайт (моя википедия). Я хочу иметь возможность войти на сайт и опубликовать полученную информацию. Кто-нибудь сделал это раньше или знал какой-то способ сделать это? Хотелось бы увидеть путеводитель по «размещению» на сайте с рубином, но я не боюсь попробовать python или какой-то другой язык.

Спасибо за любые предложения

+0

http://stackoverflow.com/questions/10919287/make-this-http-post-request-in-ruby. Не забудьте использовать контейнер cookie для сохранения файла cookie для входа – deadlock

+0

Похоже, вы хотите узнать о [MediaWiki web API] (https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page). – Nemo

ответ

0

Как вы знакомы с уже Ruby, мое предложение заключается в использовании Mechanize. Его довольно простой в использовании и всеобъемлющий для обработки сообщений и файлов cookie. Например, механизированный вызов для входа на сайт может быть примерно таким:

## Lets assume a is the Mechanize.new object. 

## requires for https sites 
a.agent.http.verify_mode = OpenSSL::SSL::VERIFY_NONE 

# its the login page and I am browsing it 
page = a.get('https://example.com/login/?next=%2F') do |login_page| 
    # I am posting the login credentials using the form 
    home_page = login_page.form_with(:action => "/login/?next=%2Flogin%2F") do |form| 
     form.email = email 
     form.password = password 
    end.submit 
end 

В Python его тоже похоже. Вы также можете использовать mechanize. Также он имеет другие библиотеки, такие как requests, urllib2 и т. Д., Которые очень просты в использовании. Более того, Python имеет огромное количество примеров в Интернете по сравнению с Ruby. Может быть, число разработчиков на Python слишком велико.

+0

Это потрясающий камень. Это также потрясающий railscast by ryan: http://railscasts.com/episodes/191-mechanize – OXp1845