python 正则表达式爬图片_利用python正则表达式爬取图片

.*?(.*?)'

+ '.*?class="IcoList">(.*?).*?class="IcoTime">(.*?)', re.S)

items = re.findall(pattern, html) # 利用re库的compile方法构造正则表达式,findall方法获取items

for item in items:

yield {

'名称': item[2],

'壁纸': item[1],

'网址': item[0],

'发布日期': item[4],

'查看次数': item[3][3:]

} # yield生成器,被调用时才赋值

content = get_image_content(item[1])

download_image(content)

def save_to_file(filename,file_type,text): # 保存至本地

with open('{}{}{}'.format(path_txt, filename,file_type), 'a', encoding='utf-8', )as wf: # 以utf-8的编码方式追加到文件

wf.write(json.dumps(text, ensure_ascii=False) + '\n') # 解码相关json格式

print(text,'写入到本地成功!')

wf.close()

def save_to_mongo(text): # 存储到MongoDB

if db[mongo_table].insert(text):

print(text,'写入Mongo成功!')

return True

return False

def main(filename, page):

url = 'http://www.***/bizhitupian/meinvbizhi/{}.htm'.format(page)

html = get_responses(url)

items = get_url_items(html)

for item in items:

save_to_file(filename,file_type, item)

save_to_mongo(item)

if __name__ == '__main__':

for page in range(start_page, end_page + 1):

main(file, page)

time.sleep(15)#等待15秒,防止被识别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值