Scrapy スパイダーを何日も実行しています。私は通常、スクレイピングしたアイテムの数などの統計を確認しようとします。ターミナルで次のコマンドを実行するだけで、統計が得られます。
$ telnet [IP] [PORT]
>>> spider.name
alf-spider
>>> stats.get_stats()
...
今、telnetlib を使用して Python でこれを実行したいのですが、上記の結果を達成できません。以下は私のpythonコードです。
#!/usr/bin/env python
import sys
import getpass
import telnetlib
HOST = "192.168.1.5"
def main():
ports = ['6023']
if len(sys.argv) > 1:
ports = sys.argv[1].split(',')
for port in ports:
get_stats(port)
def get_stats(port):
tn = telnetlib.Telnet(HOST, port)
tn.write("spider.name\n")
print tn.read_all()
if __name__ == '__main__':
main()
上記のコードが実行された場合、強制的に閉じるまでハングします。私は何が欠けていますか?