Adding compression support can be very simple -- if your spider is coded in Perl using LWP::UserAgent, then the
addition of a single line of code will enable compression support.
$ua->default_header('Accept-Encoding' => 'gzip');and then you need to make sure that you always refer to 'decoded_content' when dealing with the response object.
For other languages, all
you need to do is to add
Accept-encoding: gzipto the HTTP request that you send, and then be prepared to deal with a 'content-encoding: gzip' in the response.
Happily, some of the large spiders do support compression -- the googlebot and Yahoo Slurp do (to name but two). Since I started prodding crawler implementors, a couple have implemented compression (one within hours), and another reported that it was a bug that it didn't work -- which would be fixed shortly.
Crawlers which do more than 5% of the total (uncompressed) crawling activity are marked in bold below.
Crawler | Last IP used |
---|---|
curl/7.54.0" "c-73-227-75-114.hsd1.ma.comcast.net:8080 | 172.104.4.17 |
Magellan" "gladstonefamily.net | 172.91.101.96 |
meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "blog.gladstonefamily.net | 57.141.0.8 |
meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "pond.gladstonefamily.net | 57.141.0.7 |
meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "pond1.gladstonefamily.net | 57.141.0.26 |
meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "www.gladstonefamily.net | 173.252.107.3 |
Mozilla/5.0 (compatible; DotBot/1.2; +https://opensiteexplorer.org/dotbot; help@moz.com)" "blog1.gladstonefamily.net | 216.244.66.194 |
Mozilla/5.0 (compatible; DotBot/1.2; +https://opensiteexplorer.org/dotbot; help@moz.com)" "charon.gladstonefamily.net | 216.244.66.194 |
Mozilla/5.0 (compatible; SeekportBot; +https://bot.seekport.com)" "blog1.gladstonefamily.net | 104.248.25.93 |
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36 | 138.246.253.24 |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" "pond1.gladstonefamily.net | 116.203.27.61 |
Mozilla/5.0 (X11; Linux x86_64; rv:109)" "pond1.gladstonefamily.net | 69.162.89.188 |
Mozilla/5.0 X11; Ubuntu; Linux x86_64; rv:126.0 Gecko/20100101 Firefox/126.0" "pond1.gladstonefamily.net | 188.143.169.41 |