User:DoraConan/個人沙盒
入禀 http://www.xuehaiblog.com/?fromuser=DoraConan
本用户页正在大幅修改,持續時間「10年」,請勿在此期間編輯。 當重大編輯結束或暫時停止編輯時,請移除本模板。您可於編輯歷史中查看添加本模板的編者。 本模板是為了避免編輯衝突,請於本次重大編輯結束後立即移除本模板,讓其他編者能繼續編輯本用户页。 致其他編者:當本用户页最後編輯時間(1045日5时26分47秒前,刷新)距今超逾「10年」,請直接移除本模板即可。 |
這個是本人的沙盒,不允許別人使用,只供觀看。(以下都是不知所云的内容,不建議觀看,對外人來説只會浪費時間)
重要外部鏈接
编辑http://tools.wikimedia.de/~interiot/cgi-bin/Tool1/wannabe_kate
簽名測試區
编辑DoraConan 按此入禀本人的對話頁起訴本人 2007年8月4日 (六) 13:18 (UTC)
臨時文件
编辑#!/usr/bin/perl # catnav bot by WikiPedia:User:下一次登录 # Sisclaimer: No warranty granted, use at your own risk! # call requirements use Getopt::Std; use LWP::Simple; use LWP::UserAgent; use HTTP::Request; use HTTP::Response; use HTTP::Cookies; #subroutine #parameters local $username="xcnbot"; #input your username here, only English names are tested. local $password="******"; #input your password here local $WIKI_PATH="zh.wikipedia.org"; local $WIKI_PAGE; ### Login to wiki # Set up connection data my $browser=LWP::UserAgent->new(); my @ns_headers = ( 'User-Agent' => 'Xcnbot 1.0 by 下一次登录', #Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20041107 Firefox/1.0', 'Accept' => 'image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */*', 'Accept-Charset' => 'iso-8859-1,*,utf-8', 'Accept-Language' => 'en-US', ); # Hold cookies $browser->cookie_jar( {} ); {# Login # Make login request $response=$browser->post("http://".$WIKI_PATH."/w/index.php?title=Special:Userlogin&action=submitlogin", @ns_headers, Content=>[wpName=>$username,wpPassword=>$password,wpRemember=>"1",wpLoginAttempt=>"Log in"]); # After logging in, we should be redirected to another page. # If we aren't, something is wrong. if($response->code!=302) { #cannot login print "We weren't able to login.\n\n"; close(DEBUG); exit 1; } } print "Logged in \n"; # Trivial variables local $content; local $content1; local $content2; local @cnTree; local $editToken; local $editTime; # Set parameters local $DEPTH=5; #predefined DEPTH local $cChange=0; #Counter of CHANGEs my $vName; #Variable: current cat NAME my $vNameU="%E9%A0%81%E9%9D%A2%E5%88%86%E9%A1%9E"; #vName: Unicode, starting from “页面分类” my @aTree; #Array: current cat-TREE my $vDepth=0; #Variable: current cat-tree DEPTH my @aChild; #Array: current cat's CHILDREN my @aChildU; #aChildren: Unicode # Connect to root cat $WIKI_PAGE=$vNameU; $URL="http://".$WIKI_PATH."/wiki/Category:".$WIKI_PAGE; $response=$browser->get($URL, @ns_headers); $content=$response->as_string; { # extract vName $filestartstr="<h1 class=\"firstHeading\">Category:"; $filestart=index($content, $filestartstr); $content1=substr($content, $filestart+34); $fileendstr="</h1>"; $fileend=index($content1, $fileendstr); $vName=substr($content1, 0, $fileend); } # extract vName print "got vName\n"; # Change @aTree $aTree[$vDepth]=$vName; $vDepth+=1; if(1) { #debug open INPUT, ">debug1.txt"; print INPUT $URL; print INPUT "\n\n before digui\n\n"; close INPUT; } #debug if(1) { #log open INPUT, ">cnlog.txt"; print INPUT "program start\n"; close INPUT; } #log &gotocat($vName, $vNameU, $vDepth, @aTree); sub gotocat { #递归程序 my($vName, $vNameU, $vDepth, @aTree) = @_; if(1) { #debug log open INPUT, ">diguilog.txt"; print INPUT "Name="; print INPUT $vName; print INPUT " UName="; print INPUT $vNameU; print INPUT " vDepth="; print INPUT " aTree="; print INPUT $vDepth; for($i=0;$i<$vDepth;$i+=1) { print INPUT $aTree[$i]; print INPUT ">"; } print INPUT "\n"; close INPUT; } #debug log my @aChild; my @aChildU; my $nChild=0; #Child cat number if($vDepth>$DEPTH) { #depth exceeds $aTree[1]="..."; for($i=2;$i<$DEPTH;$i+=1) { $aTree[$i]=$aTree[$i+1]; } $vDepth=$DEPTH; if(1) { #debug log open INPUT, ">>diguilog.txt"; print INPUT "Depth exceeds\n"; close INPUT; } #debug log } print "in digui. vDepth="; print $vDepth; print "\n"; if(1) { # list and sort all children ## list print "list "; $WIKI_PAGE=$vNameU; $URL="http://".$WIKI_PATH."/wiki/Category:".$WIKI_PAGE; $response=$browser->get($URL, @ns_headers); $content=$response->as_string; $content1=$content; $filestartstr="<a class=\"CategoryTreeLabel CategoryTreeLabelNs14 CategoryTreeLabelCategory\" href=\"/wiki/Category:"; while(index($content1, $filestartstr)>=0) { #while there is more children print "c "; { # extract a Child cat line $filestartstr="<a class=\"CategoryTreeLabel CategoryTreeLabelNs14 CategoryTreeLabelCategory\" href=\"/wiki/Category:"; $filestart=index($content1, $filestartstr); $content1=substr($content1, $filestart+99); $fileendstr="</a></div>"; $fileend=index($content1, $fileendstr); $content2=substr($content1, 0, $fileend); $content1=substr($content1, $fileend+10); } # extract a Child cat line { # cat name and Uname $fileendstr="\">"; $fileend=index($content2, $fileendstr); $aChildU[$nChild]=substr($content2, 0, $fileend); $aChild[$nChild]=substr($content2, $fileend+2); } # cat name and Uname $nChild+=1; } #while there is more children if(0) { ## check if there is "next 200" $filestartstr="<br style=\"clear:both;\"/>"; $filestart=index($content, $filestartstr); $content1=substr($content, $filestart+25); $fileendstr="<h2>"; $fileend=index($content1, $fileendstr); $content1=substr($content1, 0, $fileend); $filestartstr="200</a>)<div id"; while(index($content1, $filestartstr)>=0) { # while there is "next 200" print "200 "; { ## extract url $filestartstr="200) (<a href=\""; $filestart=index($content1, $filestartstr); $content1=substr($content1, $filestart+15); $fileendstr="\" title="; $fileend=index($content1, $fileendstr); $WIKI_PAGE=substr($content1, 0, $fileend); } ## extract url $URL="http://".$WIKI_PATH.$WIKI_PAGE; if(1) { #log open INPUT, ">>cnlog.txt"; print INPUT $URL; print INPUT "\n"; close INPUT; } #log $response=$browser->get($URL, @ns_headers); $content=$response->as_string; $content1=$content; $filestartstr="<a class=\"CategoryTreeLabel CategoryTreeLabelNs14 CategoryTreeLabelCategory\" href=\"/wiki/Category:"; while(index($content1, $filestartstr)>=0) { #while there is more children print "c "; { # extract a Child cat line $filestartstr="<a class=\"CategoryTreeLabel CategoryTreeLabelNs14 CategoryTreeLabelCategory\" href=\"/wiki/Category:"; $filestart=index($content1, $filestartstr); $content1=substr($content1, $filestart+99); $fileendstr="</a></div>"; $fileend=index($content1, $fileendstr); $content2=substr($content1, 0, $fileend); $content1=substr($content1, $fileend+10); } # extract a Child cat line { # cat name and Uname $fileendstr="\">"; $fileend=index($content2, $fileendstr); $aChildU[$nChild]=substr($content2, 0, $fileend); $aChild[$nChild]=substr($content2, $fileend+2); } # cat name and Uname $nChild+=1; } #while there is more children # next 200? $filestartstr="<br style=\"clear:both;\"/>"; $filestart=index($content, $filestartstr); $content1=substr($content, $filestart+25); $fileendstr="<h2>"; $fileend=index($content1, $fileendstr); $content1=substr($content1, 0, $fileend); $filestartstr="200</a>)<div id"; } # while there is "next 200" } ## check if there is "next 200" ## sort print "sort "; my $i,$j; my $swap; for($i=0;$i<$nChild-1;$i+=1) { for($j=$i+1;$j<$nChild;$j+=1) { if($aChild[$i] gt $aChild[$j]) { $swap=$aChild[$i]; $aChild[$i]=$aChild[$j]; $aChild[$j]=$swap; $swap=$aChildU[$i]; $aChildU[$i]=$aChildU[$j]; $aChildU[$j]=$swap; } } } print "entered current page. nChild="; print $nChild; print "\n"; if(0) { #debug open INPUT, ">>debug1.txt"; my $i; for($i=0;$i<$nChild;$i+=1) { print INPUT $aChild[$i]; print INPUT " "; print INPUT $aChildU[$i]; print INPUT "\n"; } print INPUT "\n\n\n"; close INPUT; } #debug } # list and sort all children if(1) { #log open INPUT, ">>cnlog.txt"; print INPUT "Digui: Cat="; print INPUT $vName; print INPUT ", Tree="; for($i=0;$i<$vDepth;$i+=1) { print INPUT $aTree[$i]; print INPUT ">"; } print INPUT "\n"; print INPUT " "; print INPUT $nChild; print INPUT " children: "; for($i=0;$i<$nChild;$i+=1) { print INPUT $aChild[$i]; print INPUT " "; } print INPUT "\n"; close INPUT; } #log my $i; for($i=0;$i<$nChild;$i+=1) { # check and add catnav to all children my $cnDepth; my $bFound=0; #found same tree? my $bSame=1; #cat name is the same? my $cnFound=0; # get edit content $WIKI_PAGE=$aChildU[$i]; #$WIKI_PAGE="%E4%BA%9A%E6%B4%B2%E5%9B%BD%E5%AE%B6"; $URL="http://".$WIKI_PATH."/w/index.php?title=Category:".$WIKI_PAGE."&action=edit"; $response=$browser->get($URL, @ns_headers); $content=$response->as_string; # Get EditToken ($editToken) = ( $content =~ m/value\=\"([0-9a-f\\]*)\" name\=\"wpEditToken\"/ ); ($editTime) = ( $content =~ m/value\=\"([0-9a-f]*)\" name\=\"wpEdittime\"/ ); $filestartstr="<textarea tabindex='1' accesskey=\",\" name=\"wpTextbox1\" id=\"wpTextbox1\" rows='25'"; $fileendstr="</textarea>"; $filestart= index($content, $filestartstr); $filestart+=92; $fileend= index($content, $fileendstr); $content=substr($content, $filestart, $fileend-$filestart); # check if there is Catnav $filestartstr="{{Catnav|"; $content1=$content; while(index($content1, $filestartstr)>=0) { #while there is still Catnav $cnFound=1; $cnDepth=0; $filestart=index($content1, $filestartstr); $content1=substr($content1, $filestart+9); $fileendstr="}}"; $fileend=index($content1, $fileendstr); $content2=substr($content1, 0, $fileend); $content1=substr($content1, $fileend+1); $filestartstr="|"; while(index($content2, $filestartstr)>=0) { #while there is | $filestart=index($content2, $filestartstr); $cnTree[$cnDepth]=substr($content2, 0, $filestart); $content2=substr($content2, $filestart+1); $cnDepth+=1; } #while there is | #the last one $cnTree[$cnDepth]=$content2; $cnDepth+=1; if(0) { #debug open INPUT, ">>debug1.txt"; my $j; for($j=0;$j<$cnDepth;$j+=1) { # check and add catnav to all children { print INPUT $cnTree[$j]; print INPUT " "; } print INPUT "\n\n\n"; } # check and add catnav to all children } #debug $bSame=1; if($vDepth == $cnDepth) { for($j=0;$j<$cnDepth;$j+=1) { if($cnTree[$j] ne $aTree[$j]) { $bSame=0;} } } else { $bSame=0; } if($bSame) { $bFound=1; } $filestartstr="{{Catnav|"; } #while there is still Catnav print "entered child page. bFound="; print $bFound; print "\n"; if($bFound<1) { # add new tree my $treecontent; $treecontent="{{Catnav"; for($j=0;$j<$vDepth;$j+=1) { $treecontent=$treecontent."|".$aTree[$j]; } if($cnFound) { $treecontent=$treecontent."}}\n"; } else { $treecontent=$treecontent."}}\n\n"; } $content=$treecontent.$content; $WIKI_PAGE=$aChildU[$i]; $URL="http://".$WIKI_PATH."/w/index.php?title=Category:".$WIKI_PAGE."&action=edit"; #check for illegal characters my $special_char; $special_char="""; #" while(index($content, $special_char)>=0) { substr($content, index($content, $special_char), length($special_char) ) ="\""; } $special_char="<"; #< while(index($content, $special_char)>=0) { substr($content, index($content, $special_char), length($special_char) ) ="<"; } $special_char=">"; #> while(index($content, $special_char)>=0) { substr($content, index($content, $special_char), length($special_char) ) =">"; } $special_char="&"; #& while(index($content, $special_char)>=0) { substr($content, index($content, $special_char), length($special_char) ) ="&"; } if(1) {#Update $response=$browser -> post($URL, @ns_headers, Content_Type=>'form-data',Content=> [ wpTextbox1 => $content, wpSummary => "[[User:xcnbot|xcnbot]] testing", wpSave => "Save page", wpSection => "", wpEdittime => $editTime, wpEditToken => $editToken, wpMinoredit => "1", ]); print "Change made\n"; if(1) { #log open INPUT, ">>cnlog.txt"; print INPUT " Child:"; print INPUT $aChild[$i]; print INPUT " change made.\n"; close INPUT; } #log } #Update } } # check and add catnav to all children # call sub-gotocat on every child my $ch; for($ch=0;$ch<$nChild;$ch+=1) { # Change @aTree if(1) { #log open INPUT, ">>cnlog.txt"; print INPUT "Go into: Child="; print INPUT $aChild[$ch]; print INPUT "\n"; close INPUT; } #log $aTree[$vDepth]=$aChild[$ch]; &gotocat($aChild[$ch], $aChildU[$ch], $vDepth+1, @aTree); if(1) { #log open INPUT, ">>cnlog.txt"; print INPUT "Jump outto: Parent="; print INPUT $vName; print INPUT "\n"; close INPUT; } #log } } #递归程序
阿波罗5号 | |||||
---|---|---|---|---|---|
任务概要 | |||||
任务名称 | 阿波罗5号 | ||||
呼号 | AS-204 | ||||
登月舱 | LM-1 | ||||
运载火箭 | 土星IB号 SA-204 | ||||
成员人数 | 0 | ||||
发射 | 1968年1月22日 22:48:09 UTC 卡纳维尔角 LC 37B | ||||
返回 | 1968年1月23日 09:58:00 UTC | ||||
任务时间 | 11小时10分钟 | ||||
环绕轨道次数 | 7.5 | ||||
远地点 | 214千米 | ||||
近地点 | 162千米 | ||||
飞行距离 | 300,000千米 | ||||
质量 | 14,360千克 | ||||
导航 | |||||
|
目标
编辑阿波罗5的任务是在太空中测试登月舱,特别是新的引擎功能,该引擎有能力单独起飞和降落。这个的引擎将成为第一架能够在太空发射的火箭发动机。
延误
编辑同阿波罗4号,这次飞行被延误了很长时间。主要原因是登月舱。它與預計時相差很遠。除了一些延误可被归咎于缺乏建立一个载人降落月球的太空船经验。
它已被计划在1967年4月发射阿波罗5号时运送普,是在1966年9月起有的希望。但是,延误还是不断发生。尽管登月舱完全被设计了,但还是有需要量身订制的零部件。重要引擎及零件也全部出了问题。开始时,引擎顺利地启动,没有被烧着,并且沒有上升引擎制造和焊接的困难。
虽然这些问题最终被解决了,但是花了几个月和它直到1967年6月23日才那登月舱到达海角随车携带航空的Spacelines的超级Guppy。在四个月的试验和修补以后登月舱被在11月19日配对到发射工具。
在1967年12月17日,一次LM试验没通过Grumman上升阶段制造植物。在 LM-5 中的一扇窗口(阿波罗 11 的 LM 的“鹰”)在其最初的小屋加压试验期间粉碎,设计是 39 增压小屋 kPa(5.7 lbf/in2)。既内部又外部的窗口和丙烯酸的玻璃 右手的窗口的封面在压力找到 35 kPa 时粉碎(5.1 lbf/in2)。在1967年12月28日,被决定设法把在 LM-1 中的玻璃窗口替换成铝窗口,作为在类似于在检查方面在 LM-5 上出现的一个的飞行中的一次失败对面的防范。
飞行
编辑阿波罗5号的发射工具是土星IB,一只更小的火箭较之土星V。但是有能力启动 阿波罗航天船 到地球轨道中。土星IB在阿波罗5号被使用的如-204是原来被打算的一个阿波罗1号。曾经不损坏在火中在发射建筑群 34 和在发射建筑群被重新召集用于阿波罗5发射的37B。
LM-1的窗口被取代在有固态的铝的飞行之前覆镀。缩短登月舱的发送时间,没组件的腿也行被决定。不跟一群机务人员一起,没有需要发射逃跑系统火箭那通常坐在上这非常土星的秘诀。作为一个结果,被装配的火箭是仅仅55米高的。
在1968年1月22日,在已计划的发射日期后八月,阿波罗5号正好在日落之前升上太空。土星IB完美的完成工作,把第二个阶段和LM插入163乘222公里的轨道。登月舱 45分钟以后分开,在两条轨道开始其下降引擎的一块已计划39块第二灼伤以后。这被缩减在由随车携带的指导计算机所作的四秒以后,发现那引擎的刺不足够迅速地在增强。这是由于软件的bug在推进的坦克被偏袒地只是保持近于正常的气压,它花长时间较之达到彻底的加速的被制作节目的四秒。
被搬到一个交换的计划的地控制器。他们打开指导计算机和开始自动次序到随车携带的计算机中制作节目。这另外二次点燃下降引擎。然后“在洞”试验“中”实施“火”和另一块上升引擎灼伤。
在四条轨道以后任务经过,二个阶段到太平洋中被留给衰退几百公里的西南关岛。
1968-007A的阿波罗5号的LM上升阶段腐烂于1968年1月24日。1968-007B的LM下降阶段腐烂于1968年2月12日。
勋章
编辑这次修补没有被美国国家航空航天局设计但是通过设计和建造登月舱的在 Grumman 飞机的工程师。为火在洞的试验画像。也拿着在最高权利中的卫星,显示没有起落架的LM。