ruby ÖÐʹÓà Dom¼¼ÊõÀ´²éÕÒÒ³ÃæÔªËØ
ÓÐЩʱºò¿ÉÄÜ»á¸ù¾ÝһЩÓÐÏÞµÄÐÅÏ¢£¬À´²éÕÒÒ³ÃæµÄÔªËØ£¬ÕâÀï¾ÙÒ»¸öÀý×ÓÀûÓÃÒ³ÃæÎÄ×ÖÀ´²éÕÒËùÔڵıêÇ©£¬ÒÔÌÔ±¦µÄµÇÂ¼Ò³ÃæÎªÀý£¬Ê¹ÓÃÒÔÏ´úÂë¿ÉÒÔʵÏÖ¸ù¾ÝÕË»§ÃûÀ´Ê¶±ð¶ÔÓ¦µÄ½ÚµãÃû³Æ£º
require ‘watir’
#ie = Watir::IE.attach(:url, /member1.taobao.com/)
ie = Watir::IE.start(”http://member1.taobao.com/member/login.jhtml?ssl=false”)
def find_tag_by_text(ie,textName)
all_elements = ie.document.body.all
all_elements.each do |object|
if object.innerText.match(textName)
flag = false
all_children = object.children
#Èç¹û×Ó¶ÔÏóÆ¥Åäµ½£¬ÄÇôÍ˳ö,Í˳öºóflagΪtrue
all_children.each do |child|
if child.innerText.match(textName)
flag = true
break
else
next
end
end
# µ±×Ó½ÚµãÆ¥Åä²»µ½textʱ£¬ÄÇô±íʾÒѾ²éµ½ÁËÖÕµã
unless flag
puts object.tagName
break
end
end
end
end
find_tag_by_text(ie,”ÕË»§Ãû”)
Èç¹ûÒªµÃµ½¸Ã½ÚµãµÄ¸¸½Úµã£¬¿ÉÒÔд³É£º
unless flag
parent = object.parentElement
puts parent.tagName
break
end
Èç¹ûÒªµÃµ½¸Ã½Úµã×ӽڵ㣬¿ÉÒÔд³É£º
unless flag
children = object.children
puts “_____________”
children.each do |child|
pu
Ïà¹ØÎĵµ£º
RuportÊÇÒ»¸öÃâ·ÑµÄRuby±¨±í¹¤¾ß£¬Ëü¿ÉÒÔÁîµ½ÖÆ×÷±¨±íÈí¼þ±äµÃ¼òµ¥Ò»Ð©¡£RuportÖ§³Ö´ÓÎļþ»òÕßÊý¾Ý¿â»ñµÃÊý¾Ý£¬Ìṩ¹¤¾ß²Ù×÷Êý¾Ý¡£¶îÍâµØ£¬RuportÖ§³Ö¸ßÀ©Õ¹µÄ¸ñʽ»¯Èí¼þ£¬Ä¿Ç°Äܹ»Ö§Ô®HTML¡¢PDF¡¢CSVºÍÎı¾Êä³ö¡£
Ruport¿ÉÄÜÊÇRubyĿǰΨһµÄ±¨±í¹¤¾ß£¬Ä¿Ç°ÔÚ³ÖÐø¿ª·¢ÖУ¬¸ü¶àµÄÐÂÌØÐÔÕýÔÚÌí¼Ó¡£
°²×°·½·¨£º
gem instal ......
Ruport¹Ù·½ÍøÕ¾£ºhttp://www.rubyreports.org/
±¾ÀýÖн«½éÉÜRuby±¨±íµÄ¼òµ¥¿ª·¢
¿ª·¢»·¾³
OS:WindowsXP
Ruby:Ruby1.8.7
Rails:Rails2.3.5
Mysql:Mysql5.0.9
IDE:Rubymine2.0.1
Ò»¡¢°²×°gem
°²×°ÃüÁî
gem install ruport
gem install ruport-util
gem install acts_as_reportable
¶þ¡¢´´½¨Êý¾Ý¿â
datab ......
ÓÐÒ»¸öȫеÄÏîÄ¿£¬ÒòΪ¿¼Âǵ½½«À´µÄÊý¾ÝÀ©Õ¹ÐÔÄÜ£¬ËùÒÔ¿¼ÂÇÓÃCassandra×öÊý¾Ý´æ´¢£¬Ç°¶ËÓÃLighttpd + FastCGI + Rails¡£ÔÚʹÓÃCassandraµÄʱºò£¬¾õµÃÓÐһЩ¶«Î÷¿ÉÄÜ´ó¼Ò¶¼ÐèÒª£¬¾ÍдÁËÒ»¸ö¼òµ¥µÄÖ¸ÄÏ¡£ÒòΪÄÚÈݱȽϳ¤£¨16Ò³£©£¬¾ÍŪÁ˸öPDFÎļþ¸ø´ó¼ÒÏÂÔØ¡£
Cassandra in Action with Twitter's Ruby Client.pdf
Èç¹ûÏÂÔ ......
FPDFÄÜÖ§³ÖPDFµÄÖÐÎÄ´òÓ¡£¬È»¶øÈ´´æÔÚ²»ÉٵIJ»ÈçÒâÖ®´¦£¬¾ÝÎÒĿǰµÄʹÓã¬×ܽá³ö¼¸µã£º
1£©FPDFÌṩµÄPdf_Chinese×ÖÌ壬½«GBÕâÖÖ×ÖÌåдÈëÁË´úÂëÖУ¬ÈôÎÒÃÇÏ£ÍûÒýÈëÆäËûµÄÖÐÎÄ×ÖÌ壬Ôò²»ÄÜ·½±ãµØÊ¹ÓÃ
2£©FPDFÊä³öµÄÊý×Ö²¢²»ÃÀ¹Û£¬²»ÈçRuport::Formatter::PDF×Ô´øµÄ×ÖÌå
3£©FPDFÌṩµÄ·½·¨²¢²»¶à£¬¶ÔÓÚÒ»°ãµÄ±¨±í´òÓ¡£¬Óõ ......
´ËÀý×ÓÔÚ Ruby Ruportʵ¼ù—¼òµ¥±¨±íϵͳ ¼° Ruby Ruportʵ¼ù—ÖÐÎÄPDF±¨±íÖ®PRAWN µÄ»ù´¡ÉϽøÐÐÍêÉÆ£¬Ìí¼ÓÁ˶Ա¨±í²ÎÊýµÄÉè¼Æ¼°ÊµÏÖ¡£
Ò»¡¢´´½¨Êý¾Ý±íreport_parameters
create table report_parameters
(report_parameter_id integer not null auto_increment,
report_execute_id integer not null, ......