私はクローラを作成しています。このためにrobots.txtパーサーを実装しています。私は標準ライブラリを使用しています。robotparserです。Robotparserが正しく解析されていないようです
robotparserが正しくパースないで、私はGoogleのrobots.txtを使用して、私のクローラをデバッグしていているようです。
(以下の例では、IPythonからです)
In [1]: import robotparser
In [2]: x = robotparser.RobotFileParser()
In [3]: x.set_url("http://www.google.com/robots.txt")
In [4]: x.read()
In [5]: x.can_fetch("My_Crawler", "/catalogs") # This should return False, since it's on Disallow
Out[5]: False
In [6]: x.can_fetch("My_Crawler", "/catalogs/p?") # This should return True, since it's Allowed
Out[6]: False
In [7]: x.can_fetch("My_Crawler", "http://www.google.com/catalogs/p?")
Out[7]: False
時にはそれが「仕事」のようですし、時には失敗しているようですので、それは面白いです、私はまた、FacebookとのStackOverflowからのrobots.txtで同じことを試してみました。これはrobotpaser
モジュールのバグですか?あるいは私はここで何か間違っているのですか?もしそうなら、何?
thisバグは私が何についてrobotparser問題を見つけることができませんでしたいくつかのGoogle検索後
またLinuxマシンでPython 2.7.3を使用しています(Arch Linux) –