01-windows下python爬取网页上的图片
1。首先下载python,安装环境
pycharm、anaconda的下载与安装
移步各个主页下载,一键式安装。
- pycharm: http://www.jetbrains.com/pycharm/
- anaconda: https://www.anaconda.com/download/
2。pycharm的安装
下载软件: pycharm-community-2017.3.3.exe
安装位置:J:\00-pyson\00-pycharm\install
3。anaconda配置
下载:Anaconda3-5.0.1-Windows-x86_64.exe
安装位置:J:\Anaconda3\install
anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。[1] 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 515 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。
Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候。为了解决这些问题,有不少发行版的Python,比如WinPython、Anaconda等,这些发行版将python和许多常用的package打包,方便pythoners直接使用,此外,还有virtualenv、pyenv等工具管理虚拟环境。
个人尝试了很多类似的发行版,最终选择了Anaconda,因为其强大而方便的包管理与环境管理的功能。该文主要介绍下Anaconda,对Anaconda的理解,并简要总结下相关的操作。
Anaconda概述
Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。
这里先解释下conda、anaconda这些概念的差别。conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。
进入下文之前,说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。
win7中,anaconda默认安装在J:\Anaconda3\install,为了能够方便随时随地使用conda,需要在环境变量中添加J:\Anaconda3\install\Scripts。添加后重启cmd,输入conda -V能够正确返回版本,则说明配置成功。
anaconda创建python环境
可以参考其他anaconda教程,也可以在anaconda提供的交互式环境中手动创建,创建的环境存储在C:\ProgramData\Anaconda3\envs下。
Conda
是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换Anaconda
包括Conda、Python
以及一大堆安装好的工具包,比如:numpy、pandas
等Miniconda
包括Conda、Python
一般我们下载使用的就是Anaconda,包括了基本的一些工具包,
conda就是用于管理包和环境的命令行工具
注意:我们安装Anaconda后点击下面的加入到系统环境变量,不需要额外安装python的环境
可以直接使用命令
3. anaconda&pycharm
在pycharm中点击File–>settings–>project–>Project interpreter–>add local
添加anaconda2文件夹中python.exe即可
选择自己安装的外部的
这里出现一堆才正确
4. 案例
新建一个项目
#!/user/bin/python3
# -*- coding: UTF-8 -*-
from urllib import request
from bs4 import BeautifulSoup
import re
import time#r = request.get('http://www.mzitu.com/all/') #像目标url地址发送get请求,返回一个response对象
#print(r.text) #r.text是http response的网页HTMLurl = "https://www.zhihu.com/question/22918070"
html = request.urlopen(url).read().decode('utf-8')
print ("Hello, Python!") # 第二个注释
soup = BeautifulSoup(html, 'html.parser')
# print(soup.prettify())# 用Beautiful Soup结合正则表达式来提取包含所有图片链接(img标签中,class=**,以.jpg结尾的链接)的语句
links = soup.find_all('img', "origin_image zh-lightbox-thumb", src=re.compile(r'.jpg$'))
print(links)# 设置保存图片的路径,否则会保存到程序当前路径
path = r'J:\00-pyson\img' # 路径前的r是保持字符串原始值的意思,就是说不对其中的符号进行转义
for link in links:print(link.attrs['src'])# 保存链接并命名,time.time()返回当前时间戳防止命名冲突request.urlretrieve(link.attrs['src'], path + '\%s.jpg' % time.time()) # 使用request.urlretrieve直接将所有远程链接数据下载到本地
问题1:
windows下面不是内部或外部命令,也不是可运行的程序或批处理文件。
解决:设置环境变量,J:\python\Scripts\;J:\python\;
但是仍然报错。最后不知道怎么就好了。
问题2:
ImportError: No module named bs4
解决:
解决方法:
运行时提示ImportError: No module named bs4错误,意思是未找到名为Beautifulsoup4的模块。
写一下Python如何安装模块:
1.下载BS4模块:
http://www.crummy.com/software/BeautifulSoup/bs4/download/4.3/beautifulsoup4-4.3.2.tar.gz
2.解压到Python安装目录下的根目录中:
3.运行cmd,进入解压缩后的目录(如果Python默认安装在C盘下,打开cmd之后可以使用cd …语句先返回根目录,再进入Python27\beautifulsoup4-4.3.2)
J:\python\beautifulsoup4-4.3.2>python setup.py install
running install
running build
running build_py
creating build
creating build\lib
creating build\lib\bs4
copying bs4\dammit.py -> build\lib\bs4
copying bs4\diagnose.py -> build\lib\bs4
copying bs4\element.py -> build\lib\bs4
copying bs4\testing.py -> build\lib\bs4
copying bs4\__init__.py -> build\lib\bs4
creating build\lib\bs4\builder
copying bs4\builder\_html5lib.py -> build\lib\bs4\builder
copying bs4\builder\_htmlparser.py -> build\lib\bs4\builder
copying bs4\builder\_lxml.py -> build\lib\bs4\builder
但是还是不行、最后还是修改使用anaconda
程序运行结果
J:\00-pyson\img目录下生成一堆图片
01-windows下python爬取网页上的图片相关推荐
- python爬取图片-Python爬取网页中的图片(搜狗图片)详解
前言 最近几天,研究了一下一直很好奇的爬虫算法.这里写一下最近几天的点点心得.下面进入正文: 你可能需要的工作环境: Python 3.6官网下载 本地下载 我们这里以sogou作为爬取的对象. 首先 ...
- python爬取网站教学视频_零基础Python爬取网页文章和图片详细教学(内附源码、教学视频)...
Python爬虫,这个我相信对于很多人来说都不陌生! 今天小编给大家提供一份零基础Python爬取网页图片以及小说的代码并且详细的和大家讲解一下! 开发环境:版本Python3.6.2!(2版本会在2 ...
- python简单的爬取网页上的图片
如果需要大量的图片,在网页中一个一个下载,耗费时间太长了,如果可以有程序自动帮我们下载图片,这样就最好了,既快速又方便. 接下来,我将把学习笔记记录如下,以下内容仅仅是突击学习.尽快使用的效果,而对于 ...
- python爬取网页上的特定链接_python3下scrapy爬虫(第三卷:初步抓取网页内容之抓取网页里的指定数据)...
上一卷中我们抓取了网页的所有内容,现在我们抓取下网页的图片名称以及连接 现在我再新建个爬虫文件,名称设置为crawler2 做爬虫的朋友应该知道,网页里的数据都是用文本或者块级标签包裹着的,scrap ...
- python爬取网页上的特定链接_自学python爬虫二:如何正常操作urllib2通过指定的URL抓取网页内容...
所谓网页抓取, 就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地. 类似于使用程序模拟IE浏览器的功能,把URL作为HTTP请求的内容发送到服务器端, 然后读取服务器端的响应资源. 在P ...
- python爬取网页上的超链接
用bs4中的BeautifulSoup解析网页 from urllib.request import urlopen from bs4 import BeautifulSouphtml = urlop ...
- python爬取网页上的特定链接_python 用bs4解析网页后,如何循环打开爬取出来的网址链接?...
请问,用beautiful soup爬取特定网页后提取tag 'a',抓取里面的网址,打开特定的网址,循环特定次数,最后打印出想要的网址,如何操作? 详细的要求如下图: 我的代码如下: import ...
- php抓取搜狗图片,Python爬取网页中的图片(搜狗图片)详解
前言 最近几天,研究了一下一直很好奇的爬虫算法.这里写一下最近几天的点点心得.下面进入正文: 你可能需要的工作环境: 我们这里以sogou作为爬取的对象. 首先我们进入搜狗图片http://pic.s ...
- 【爬虫】使用beautifulsoup、requests爬取网页上的图片;循环爬取上市公司高管信息
**声明:本篇博文只用于对于爬虫技术的学习交流.如果侵犯到相关网站利益,请联系我删除博文.造成不便还请见谅.希望各位同学在学习的时候不要过于频繁的去请求. 最近博主在学习前端开发和网页相关的东西,这些 ...
最新文章
- SpringBoot------添加保存时自动编译插件
- [JS]计算字符串中出现最多的字符和其出现次数
- 深圳网络推广谈论网站收录后的内容还能不能修改?
- dataObject可以去重吗java_python爬虫scrapy框架之增量式爬虫的示例代码
- Java面试宝典系列之面试复习提纲
- href脱离iframe显示
- 常用数据库的分页实现
- 【学习笔记】Xcode常见设置
- 线序及模式配置Linux,[CCNA图文笔记]-1-水晶头线序及设备互联法则
- Aizu ITP2_6_A 二分
- python内置数据结构方法的时间复杂度
- JavaScript—call, apply, bind 函数(20)
- Adapter使用notifyDataSetChanged()刷新数据不更新的原因
- 红蜘蛛多媒体网络教室v7.2版一款网络教学的软件_我是亲民_新浪博客
- iOS iPhone X底部设置高度 白色底部显示
- 敏捷 2016:行业分析研讨会
- java8 stream中Comparator.comparing排序
- win10 win11关睿频(打开隐藏的“处理器性能提升模式”)
- Java时间日期类处理(LocalDateTime、LocalDate相关操作、获取周几、工作日休息日节假日判定)
- 交换机上STP端口角色选举规则