学完正则的一个小例子就是爬取猫眼排行榜TOP100的所有电影信息
看一下网页结构:
可以看出要爬取的信息在<dd>标签和</dd>标签中间
正则表达式如下:
pattern=re.compile('<dd>.*?board-index.*?>(.*?)</i>.*?data-src="(.*?)".*?name.*?a.*?>'
+'(.*?)</a>.*?star">(.*?)</p>'
+'.*?releasetime">(.*?)</p>.*?integer">(.*?)'
+'</i>.*?fraction">(.*?)</i></p>.*?</dd>',
re.S)
源码如下:
在弄这个的时候,自己先写了一遍正则,,不过只能爬取每一页的第一条数据,然后就没有下文了,,百思不得解
然后仔细的和书上的正则匹配,才发现有的地方写错了,通过这个例子,我们可以知道,正则表达式真的麻烦。。。。
也好难写。
运行结果:
最后还将数据保存在本地,,
GitHub地址:https://github.com/tyutltf/maoyan