Python简单知乎爬虫--爬取页面的图片并下载到本地
2016-10-07 14:33
966 查看
写了一个小爬虫,其实也算不上爬虫,只是抓取了页面的图片。这里主要是BeautifulSoup解析HTML源码,非常的方便啊,简直是神器,之前一直是使用正则表达式去解析非常痛苦啊!!!!
这里是BeautifulSoup的中文文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/
代码详细见注释,解释的非常清晰了。以后再慢慢加一些功能吧
最后附上我的这个小项目的github地址:https://github.com/qq1367212627/spider
原文链接:http://blog.csdn.net/qq_24489717/article/details/52653186
[python]
view plain
copy
print?
#coding=utf-8
import urllib2
from bs4 import BeautifulSoup
import os
import re
url="https://www.zhihu.com/question/36390957"#指定的URL
def download(_url,name):#下载函数
if(_url==None):#地址若为None则跳过
pass
result=urllib2.urlopen(_url)#打开链接
#print result.getcode()
if(result.getcode()!=200):#如果链接不正常,则跳过这个链接
pass
else:
data=result.read()#否则开始下载到本地
with open(name, "wb") as code:
code.write(data)
code.close()
res=urllib2.urlopen(url)#打开目标地址
respond=res.read()#获取网页地址源代码
count=0#计数君
soup=BeautifulSoup(respond)#实例化一个BeautifulSoup对象
lst=[]#创建list对象
for link in soup.find_all("img"):#获取标签为img的内容
address=link.get('data-original')#获取标签属性为data-original的内容,即图片地址
lst.append(address)#添加到list中
s=set(lst)#去重
for address in s:
if(address!=None):
pathName="E:\\2333\\"+str(count+1)+".jpg"#设置路径和文件名
download(address,pathName)#下载
count=count+1#计数君+1
print "正在下载第:",count
这里是BeautifulSoup的中文文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/
代码详细见注释,解释的非常清晰了。以后再慢慢加一些功能吧
最后附上我的这个小项目的github地址:https://github.com/qq1367212627/spider
原文链接:http://blog.csdn.net/qq_24489717/article/details/52653186
[python]
view plain
copy
print?
#coding=utf-8
import urllib2
from bs4 import BeautifulSoup
import os
import re
url="https://www.zhihu.com/question/36390957"#指定的URL
def download(_url,name):#下载函数
if(_url==None):#地址若为None则跳过
pass
result=urllib2.urlopen(_url)#打开链接
#print result.getcode()
if(result.getcode()!=200):#如果链接不正常,则跳过这个链接
pass
else:
data=result.read()#否则开始下载到本地
with open(name, "wb") as code:
code.write(data)
code.close()
res=urllib2.urlopen(url)#打开目标地址
respond=res.read()#获取网页地址源代码
count=0#计数君
soup=BeautifulSoup(respond)#实例化一个BeautifulSoup对象
lst=[]#创建list对象
for link in soup.find_all("img"):#获取标签为img的内容
address=link.get('data-original')#获取标签属性为data-original的内容,即图片地址
lst.append(address)#添加到list中
s=set(lst)#去重
for address in s:
if(address!=None):
pathName="E:\\2333\\"+str(count+1)+".jpg"#设置路径和文件名
download(address,pathName)#下载
count=count+1#计数君+1
print "正在下载第:",count
#coding=utf-8 import urllib2 from bs4 import BeautifulSoup import os import re url="https://www.zhihu.com/question/36390957"#指定的URL def download(_url,name):#下载函数 if(_url==None):#地址若为None则跳过 pass result=urllib2.urlopen(_url)#打开链接 #print result.getcode() if(result.getcode()!=200):#如果链接不正常,则跳过这个链接 pass else: data=result.read()#否则开始下载到本地 with open(name, "wb") as code: code.write(data) code.close() res=urllib2.urlopen(url)#打开目标地址 respond=res.read()#获取网页地址源代码 count=0#计数君 soup=BeautifulSoup(respond)#实例化一个BeautifulSoup对象 lst=[]#创建list对象 for link in soup.find_all("img"):#获取标签为img的内容 address=link.get('data-original')#获取标签属性为data-original的内容,即图片地址 lst.append(address)#添加到list中 s=set(lst)#去重 for address in s: if(address!=None): pathName="E:\\2333\\"+str(count+1)+".jpg"#设置路径和文件名 download(address,pathName)#下载 count=count+1#计数君+1 print "正在下载第:",count
相关文章推荐
- Python简单知乎爬虫--爬取页面的图片并下载到本地
- python爬虫简单的抓页面图片并保存到本地
- python简单爬虫(下载知乎图片示例)
- 【Python爬虫基础】抓取知乎页面所有图片
- python 简单爬虫下载图片
- python自学笔记(8)--Python简单爬虫从网站上下载图片和用第三方库request实现百度翻译
- python爬虫:从页面下载图片以及编译错误解决。
- 一个简单的python爬虫,抓取单个页面的图片
- Python爬虫下载网站上的图片到本地
- Python编写一个简单的简单的爬虫-下载保存在本地
- 每天一篇python:简单爬虫下载图片篇
- Python爬虫获取图片并下载保存至本地
- python爬虫-下载图片到本地目录
- Python爬虫获取图片并下载保存至本地的实例
- python 简单的图片下载到本地
- Python练手爬虫系列No.1 知乎福利收藏夹图片批量下载
- python3.6 urllib.request库实现简单的网络爬虫、下载图片
- python简单的图片下载小爬虫
- Python3 爬虫下载指定页面图片
- Python实现简单爬虫功能--批量下载百度贴吧里的图片