Mechanize - подводные камни, не захватывается простая форма

Разговоры ни о чём

Модератор: vadim64

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Mechanize - подводные камни, не захватывается простая форма

Непрочитанное сообщение ProFTP » 2012-10-23 0:56:14

Код: Выделить всё

<form name=qw action=/cgi-bin/ch/cht.pl method=POST>

<table><tr><td>
<table cellspacing=0 cellpadding=0>
<tr><td align=right><B>назовитесь:&nbsp </B></td><td><input class="l" type=text name=name size=9 maxlength=20></td></tr>
<tr><td align=right><B>пароль:&nbsp </B></td><td><input class="l" type=password name=pass size=9 maxlength=15></td></tr>
</table></td>
<td>&nbsp <B>цвет: </B></td>
<td align=right>
<table border=0 cellspacing=1 cellpadding=0 height=40>
<tr>

Код: Выделить всё

#!/usr/bin/ruby

require 'rubygems'
require 'hpricot'

require 'mechanize'

agent = Mechanize.new
agent.read_timeout = 60
#agent.idle_timeout = 60
agent.open_timeout = 60

page         = agent.get 'http://bizarre.kiev.ua/'
form         = page.form_with( :action => '/cgi-bin/ch/cht.pl' )


username_field = form.field_with(:name => "name")
username_field.value = "hhhfghfgh"

password_field = form.field_with(:name => "pass")
password_field.value = ""

agent.submit form


ругается

Код: Выделить всё

./rub.rb:17: undefined method `field_with' for nil:NilClass (NoMethodError)

это строка:

Код: Выделить всё

username_field = form.field_with(:name => "name")
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Gendos
лейтенант
Сообщения: 801
Зарегистрирован: 2009-02-18 14:30:39
Откуда: АЗиОПА
Контактная информация:

Re: Mechanize - подводные камни, не захватывается простая фо

Непрочитанное сообщение Gendos » 2012-10-23 13:12:03

Код: Выделить всё

[b]form [/b]        = page.form_with( :action => '/cgi-bin/ch/cht.pl' )
username_field = [b]form[/b].field_with(:name => "name")
Чаю?
Да как удав! Работаю.

Аватара пользователя
Gendos
лейтенант
Сообщения: 801
Зарегистрирован: 2009-02-18 14:30:39
Откуда: АЗиОПА
Контактная информация:

Re: Mechanize - подводные камни, не захватывается простая фо

Непрочитанное сообщение Gendos » 2012-10-23 13:39:54

Код: Выделить всё

-- page = agent.get 'http://bizarre.kiev.ua/'
++page = agent.get ('http://bizarre.kiev.ua/')
И нахрена такой изврат
вариант...

Код: Выделить всё

page = agent.post( 'http://bizarre.kiev.ua/cgi-bin/ch/cht.pl', {'name'=>'name', 'pass'=>'pass'}) 
И форму в божий вид приведи...
Да как удав! Работаю.


Аватара пользователя
dekloper
ст. лейтенант
Сообщения: 1331
Зарегистрирован: 2008-02-24 15:43:19
Откуда: давно здесь сидим..
Контактная информация:

Mechanize - подводные камни, не захватывается простая форма

Непрочитанное сообщение dekloper » 2015-12-16 20:23:14

а если и пытается, укрожопых фашизтоф грех не ломануть
ТОВАгИЩИ! БгАТЬЯ И СЕСТгЫ! ДОЛОЙ гАВНОДУШИЕ!