晚上没事的时候和室友聊聊爬虫的事,大概了解了下原理和思路,简单的都是获取页面,然后匹配目标,然后再load下来。具体大型的爬虫项目就得取得目标目录(索引)然后再通过索引去找到目标url,再去定位资源,接着清洗资源。
demo如下,抓取同性交友网站的略缩图,结果如下
python 2.7.12
# -*- coding:utf-8 -*-
from requests import Session
import re
class Bilibili():
def __init__(self):
self.session = self._get_new_session()
self.host = 'http://www.b.com'
def start_work(self):
resp = self.session.get("http://www.b.com/")
content = resp.content
reg = r'src="(.+?\.jpg)" alt'
imgre = re.compile(reg)
imglist = re.findall(imgre, content)
i = 100
for img_url in imglist:
self.download_img(img_url, str(i))
i += 1
def download_img(self, url, name):
resp = self.session.get(url)
image_conten = resp.content
file_path = './images/{0}.jpg'.format(name)
with open(file_path, 'wb') as fw:
fw.write(image_conten)
def _get_new_session(self):
s = Session()
return s
if __name__ == '__main__':
test = Bilibili()
test.start_work()