python抓取网页中链接的静态图片

yipeiwu_com6年前Python爬虫

本文实例为大家分享了python抓取网页中链接的静态图片的具体代码,供大家参考,具体内容如下

# -*- coding:utf-8 -*- 
 
#http://tieba.baidu.com/p/2460150866 
#抓取图片地址 
 
from bs4 import BeautifulSoup 
import urllib.request 
from time import sleep 
 
html_doc = "http://tieba.baidu.com/p/2460150866" 
 
def get_image(url): 
 req = urllib.request.Request(url) 
 webpage = urllib.request.urlopen(req) 
 
 html = webpage.read() 
 soup = BeautifulSoup(html, 'html.parser') 
 
 #抓取图片地址 
 #抓取img标签且class为BDE_Image的所有内容 
 img_src=soup.findAll("img",{'class':'BDE_Image'}) 
 i = 1 
 for img in img_src: 
  img_url = img.get('src') #抓取src 
 # print(img) 
  req = urllib.request.Request(img_url) 
  u = urllib.request.urlopen(req) 
  data = u.read() 
  with open("AutoCodePng20180119-"+str(i)+".jpg", 'wb') as f: 
   sleep(2) 
   f.write(data) 
   i += 1 
 
def getImg(url): 
 html = urllib.request(url) 
 page = html.read() 
 soup = BeautifulSoup(page, "html.parser") 
 imglist = soup.find_all('img') #发现html中带img标签的数据,输出格式为<img xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,存入集合 
 lenth = len(imglist) #计算集合的个数 
 for i in range(lenth): 
  print imglist[i].attrs['src'] #抓取img中属性为src的信息,例如<img src="123456" xxxxxxxxxxxxxxxx,则输出为123456 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python爬虫 基于requests模块的get请求实现详解

需求:爬取搜狗首页的页面数据 import requests # 1.指定url url = 'https://www.sogou.com/' # 2.发起get请求:get方法会返...

Python3爬虫学习之爬虫利器Beautiful Soup用法分析

Python3爬虫学习之爬虫利器Beautiful Soup用法分析

本文实例讲述了Python3爬虫学习之爬虫利器Beautiful Soup用法。分享给大家供大家参考,具体如下: 爬虫利器Beautiful Soup 前面一篇说到通过urllib.re...

python制作爬虫并将抓取结果保存到excel中

python制作爬虫并将抓取结果保存到excel中

学习Python也有一段时间了,各种理论知识大体上也算略知一二了,今天就进入实战演练:通过Python来编写一个拉勾网薪资调查的小爬虫。 第一步:分析网站的请求过程 我们在查看拉勾网上的...

使用python爬取抖音视频列表信息

使用python爬取抖音视频列表信息

如果看到特别感兴趣的抖音vlogger的视频,想全部dump下来,如何操作呢?下面介绍介绍如何使用python导出特定用户所有视频信息 抓包分析 Chrome Deveploer To...

python使用BeautifulSoup与正则表达式爬取时光网不同地区top100电影并对比

python使用BeautifulSoup与正则表达式爬取时光网不同地区top100电影并对比

前言 还有一年多就要毕业了,不准备考研的我要着手准备找实习及工作了,所以一直没有更新。 因为Python是自学不久,发现很久不用的话以前学过的很多方法就忘了,今天打算使用简单的Beaut...