*1  WWW::Mechanize alike in ruby

WWW::Mechanize ������ Web\��⏢�¼\������������Ð���·��������¡�\���\���\���\�����«������������\��\���\»\¹�����쏢����½�������������¼«�����²½���·������¹��ԏ�𡯏����� ruby library��¡�����𡯏��Ð

http://example.com ������\��\���\»\¹ ��� 1�����ӏ����䏢���� form ������³���\���\���¼\���\��������� foo, bar, baz �����ҏ����Џ������·������ submit ��� \��⏢�¼\��������������� "foo" �����ҡ���������� link �����ҏ���µ��я��·������\���\���\���\��� ��� \��⏢�¼\���������¼���������

������������������������\��\���\»\¹��������돢돫�����µ­½��ҏ��������­������ Ruby library ��¡򏢱µ������ Perl ����������ޏ��¾������ WWW::Mechanize ���̏���������¡��½������������ ruby �����������������������������ď��폢�����돪������ӏ��������������Ï�������¡�Web Test \���\������¼\���\������¼\�������������ޏ�����������µ����½������»�����������������������·���¹½�����������̏�¡��½������������\��\���\��\���\������������«������»�����𡯏����������������Ï�����\���\���\���\���\���²½���·�����ď���������������¹�����𡯏��������Ð���������������«��������¡�

*2  WWW::Mechanize alike in ruby ������»��������������� mixi ������\��\���\»\¹

mixi ������ login ���·�����ď��������������·������������µ­������ URL �돫�����������ҏ�������������������������¡�돪�²¼���������������Ï��������¹���������Ð��������������¡�
require 'mechanize'
username = '[email protected]'
password = 'foobarbaz'

agent = WWW::Mechanize.new {|a| a.log = Logger.new('access.log') }
page = agent.get('http://mixi.jp/')
form = page.forms[0]
form.fields.find {|f| f.name == 'email'}.value = username
form.fields.find {|f| f.name == 'password'}.value = password
form.fields.find {|f| f.name == 'next_url'}.value = '/home.pl'
page = agent.submit(form, form.buttons.first)

if /url=([^"])"/ =~ page.body
  link = 'http://mixi.jp' + $1.to_s
  agent.get(link)
end

diarylist = agent.get('http://mixi.jp/new_friend_diary.pl')
diarylist.links.each do |link|
  diaryurl = link.href # => 'view_diary.pl?id=12345&owner_id=2345'
end
�����������������������ġ�����������¡�page.body ���� html text ������»�����������������������»��⏪�я�������돫����������������ҏ��·�����ď��������������­���������³������������»��������Ï�����������������¡�

*3  mechanize.rb ������ net/smtp �����ҏ����»��Џ����� require ��� \���\���\���\���

���·���«���·�����������̏��������������ޏ��«������»�ߏ����������ď����������㏪�����������������������··��������������������Ï��«�����Ԣ����¹������̏�¡�mechanize ������»��������������������� net/smtp ������»��������Ï�������¡�Net::SMTP.start(host) ... ����
/usr/lib/ruby/1.8/net/smtp.rb:393:in `do_start':
private method `open' called for Net::InternetMessageIO:Class (NoMethodError)
������������������������������\��\������¼�����ҏ����������������я���������������¡�net/smtp ���������Ώ�����»���������������¾���¹��������������������я�����������������������������������¡�mechanize ������ require ���¹���������������������������¹���������������������������������Ï����� (���µ������������������½��Џ��������������������������̏��������­»��Ώ�����������������������ď��»��С���ӏ��«���«�����������ď���)��¡�

����������㏢���������Ώ�������������¡�mechanize ������������ mechanize/net-overrides/protocols.rb ������������������\���\���\���\������̏���������¡�mechanize.rb ��������������̏����� load-path ������¾���µ­�����ҏ�����²������·��������������������¡��³������������������������½������µ������ net/protocols.rb ����¾���½��Џ��­���µ�����������������쏢������¡�Net::InternetMessageIO �����ҏ�������������돪�����������돩�¼��������؏��·��������������������������\���\���\���\����������µ���������·��������¡����������Ï�����������·Ð²������¼�����ӏ������������������������������������Ï��������̏�¡�¾��������������������������� ruby1.8.2 ����������½��� net/protocols ����������������¹������������»������������ mechanize ����������돢돫��·��������������¡�·�������� system ���«������ mailx �����ҏ����������ӏ����������������Ï�������²�����ҏ��������������������·�����������������ď��̏�¡��³�����я���������������������²���·������¹�������������̏��µ���·�����������я�����������������? ��²���������������³���������������������������� net/smtp ���������ޏ�������������������¡�net/protocols ������»��������Ï��¾������ net/* \���\���\���\���\����������ޏ�������������¼��؏��ޏ����������������������Ï��·��¡�load-path �����ҏ���������������������������������������������̏��\�����������Џ��·���½�����Ï�¡�mechanize �����������ԏ����� require ������ Net::* �����ҏ�ġ����¹���������������������Ð��������²�����������������������������������Ï��«��¡�

( Permalink | Comments (3) | tags: programming  ruby  )
1. mixi2gmail from World Wide Walker at 2005-10-13 19:53
[mixi2gmail] ����������������𡯏����� trac ������\µ\���\�����������¡�mixi ��돪����·������µ­������¼������������·������ html\������¼\������������·�������������ď��¹������ mixi2gmail.rb ������돪����·�����������ҏ����ӏ��������������­���������·�����ď�¡򏪿��̏����Џ����������� ruby µ��⏢���� WWW::Mechanize (¼������µ�������������������� 0.3.1) ���̏���̏���ߏ�¡�돪������½��Џ����������ď�������������¡�mechanize.rb ������»��������������� mixi ������µ­������¼��������� ���·���������������������¹��¡�h.....
mecanize.rb ������ mixi diary ������¼«�����¼������������¹������ mecanize.rb ������ mixi diary ������¼«�����¼������������¹������ - World Wide Walker yoosee���µ�����я�����¾���µ­������\��\���\���\������¼������»²¹���������Mixi���·������������µ­������URL������\���\¹\���������¼«�����¼������������¹������PRagger\��\���\��\���\��я����ҏ�돫�...
3. [Ruby] PRagger������mixi������������¹������¹������\��\���\��\���\��� from �����������ď�������𡭏����叢���Ï����������я����� at 2007-03-21 19:29
�����������������������������я�����\���\¹\���������½Ð���������������������������������¹���̏�����¡� \���\���\�돢����½��Џ����������ď�����������������mixi������������������¹������·�����ď�����¾���¹���������»��������Ï��³�����������ҏ����只�������·���������������������¹��¡� »����������������돪�²¼������������������¡� RSS\���\���¼\���������돪�½��������¡돫������������ҏ�����¹������¹������ title������YAML������»������������·������������¾���¹����������돫������������䏢����\���\���¼\���������title merge_feeds������»������������·������¾���¹�����������¡�\���\���¼...
yahoo\���\������¼\���\�ޏ��¼\¹�����ҡ돫�³���������\���\���\���\������¼\������¹������\������¼\��������ҏ��µ���·�����ď������������¹���̏�¡񏢱«���������«������������������������������돫����������������Ώ��������·�����ď�¡� \���\���\��ď��¼\���\���\���\¹\���\������¼\������������·������������Yahoo\���\������¼\���\�ޏ��¼\¹ - sshi.Continual������������¼«�����²½���������·���­���³����������½��Џ����������������������ď���������¾������·������¼��只��ߏ��̏��������������«���������� ¼«�����²½\������¼\���������»��������Ï��³������������...
Comments
1. garyo at 2007-02-23 22:04  (link)
���³�����я�������������������¡�garyo���������������������������¹��¡��³������������������\��\���\���\������¼������»²¹���������PRagger�����Џ�����Mixi���·������������µ­������URL������\���\¹\���������¼«�����¼������������¹������PRagger\��\���\��\���\��я����ҏ�돫�����·���������·�����ď�¡�PRagger������³«���������µ�����������������������������µ¹���·���������������·�����������Ï��«��¡�
2. yoosee at 2007-02-24 00:28
��������������¡����������������������������»�����я�¡�PRagger ����������������������Ï�����������¼���������½Ð���·�����������Ώ����������Ï�����»�ߏ��������������������������¹������������¡�½���������������»���������»��������Ï��«���������·���������������»�����я��·��¡�
3. garyo at 2007-02-26 00:14  (link)
�����������̏����������Ï�𡭏������������������¹��¡�
mechanize���µ�����������������������Ώ��������·�����ď��̏�¡񏩡��Џ��·���������������¹��������¡�

Please write your comment. email address won't appear. Cannot use any HTML tags in comment.
\³\���\���\��������ҏ�����½��Џ��­²¼���µ��������¡�\������¼\���\��\���\���\¹������������³«���µ���������������»�����я�¡� ������������HTML\���\�돢���������̏����Џ��������­���������»�����я�¡�
Name   E-mail   URL
Comment

About W.W.Walker

World Wide Walker ������ yoosee ������������������ blog ���������¹��¡�PDA, Web����\µ���¼\е»½���, �����Џ�����·��������ď�폢���㏪���쏢��������������������������������¼���������¾������²���������������������¹... read more

���³������\��\���\���\������¼������\���\���\���\������¼\���

Navigation

���³������\��\���\���\������¼������������\���\���\���

\��\���\���\������¼�����ҡ돪䏩���

\«\���\��\������¼

Web ������돪����·µ­»���

Monthly Archives

Select Month to read