自己写一个python网页抓取的程序,碰到一个问题
url是http://xxx
网页代码是这样的:
<!DOCTYPE html>
<html>
<head>
<meta charset=utf8>
<title>Crawl Me</title>
</head>
<body>
<ul>
<li><a href=page1.html>page 1</a></li>
<li><a href="page2.html">page 2</a></li>
<li><a href='page3.html'>page 3</a></li>
<li><a href='mirror/index.html'>mirror</a></li>
<li><a href='javascript:location.href="page4.html"'>page 4</a></li>
</ul>
</body>
</html>
在点击mirror的时候,页面会跳转到
http://xxx/mirror/index.html
再点击mirror,又会跳转到http://xxx/mirror/mirror/index.html
我在抓取的时候就会出现循环地重复地去抓这个index.html的问题
我用md5去计算这个网页的内容,发现每次index.html的内容的md5的值都是不同的,但是抓取到的网页,我用
md5sum得到的结果又是一样的,非常郁闷……
代码如下
content = urllib2.urlopen(url).read()
md5obj = hashlib.md5()
md5obj.update(content)
print md5obj.hexdigest()
发现每一次的md5码都不同
现在有两个问题:
1、有什么办法能够在这样的情况下避免重复抓取?
2、为什么python里每一个md5值都不同,而md5sum的结果是相同的?
SMILET
慕标琳琳
收到一只叮咚
达令说
杨魅力
ibeautiful
繁花不似锦
相关分类