参考:勿在浮沙筑高台

一、操作工具

pycharm+Anaconda2(python2.7)

cmd输入python可以看到python版本号,若输出错误。在环境变量PATH中加分号  ;   添加Anaconda中python.exe所在路径我所在的目录  D:\Anaconda;D:\Anaconda\Scrips

再次cmd输入python查看quit()退出。

py2exe选择对应版本:py2exe

二、代码

1、创建Getimg.py

import re
import urllib           #网页操作模块
#获取网页内容
def getHtml(url):page=urllib.urlopen(url)  #打开网址
    html=page.read()          #读取网页中的内容并存储在html
    return html#获取图片
def getImg(html):reg=r'//[\w]*\.?alicdn\.com[^"\']+\.jpg' #网页内容筛选
    imgre=re.compile(reg)imglist=re.findall(imgre,html)           #找到匹配待输入网页内容存储在imglist
    print(len(imglist))x=1
    for imgurl in imglist:print(imgurl)imgurl='https:'+imgurl
#urlretrieve方法将url定位到的html文件下载到你本地的硬盘中。如果不指定filename,则会存为临时文件。urlretrieve()返回一个二元组(filename,mine_hdrs)
 urllib.urlretrieve(imgurl,'%s.jpg'%x)
x+=1
#下载图片
def DownLoadImg(url):html=getHtml(url)getImg(html)

输入网址测试是否正确

2、界面设计

from Tkinter import *  # Tk会调用操作系统提供的本地GUI接口 完成最终的GUI
import tkMessageBox as mb# 从Frame派生一个Application类,这是所有Widget的父容器:
class Application(Frame):def __init__(self, master=None):Frame.__init__(self, master)self.pack(fill=X, padx=100)self.createWidgets()def createWidgets(self):self.nameInput = Entry(self)self.nameInput.pack(fill=X, pady=10)self.nameInput.pack(fill=X, padx=5)self.alertButton = Button(self, text=(' 请输入网址 '), command=self.FUN)self.alertButton.pack(fill=X, padx=30)self.alertButton.pack(fill=X, pady=10)def FUN(self):name = self.nameInput.get() or 'blank'
        if name == 'blank':mb.showinfo('Message', '网址不合法!')else:DownLoadImg(name)mb.showinfo('Message', '下载成功并保存!')app = Application()  # 实例化Application
app.master.title('淘宝网页图片爬取')  # 对话框标题
app.mainloop()  # 主消息循环

3、创建convert.py

import py2exefrom distutils.core import setup
setup(windows=[{"script": "Getimg.py"}])

4、生成exe打包文件

安装py2exe  选择默认环境       D:\Anaconda\Lib\site-packages
输入:
python convert.py py2exe

 

显示以上内容即可生成两个文件夹,在dist文件下找到Getimg.exe 应用文件,点击打开输入淘宝网址即可在该文件下下载网页中的jpg图片。 

三、总结

1、电脑上安装了Anaconda2(python2.7.13)和Anaconda3(python3.6.1)两个版本由于python3版本所对应py2exe软件不匹配,难找,所以选择版本2的。2、由python3改过来的代码主要是安装包名字不同以及所调用的成员函数不同,其他几乎一致。3、改写代码以及调试过程中遇到各种问题,在网上有的搜不到,都不想弄了,但想想连个小问题都解决不了,那还是别当程序猿。

python爬虫淘宝图片+GUI+打包成exe相关推荐

  1. 将GUI打包成EXE发布

    将GUI打包成EXE发布 --(未解决) 名词解释 MCR: MATLAB Compiler Runtime TLC: Target Language Compiler 注意事项 将GUI界面编译成e ...

  2. 打包可执行包_想把你写的Python程序发给别人用?打包成exe啊!

    前言 大家好,欢迎来到编程教室! 当你学了一段时间Python,终于写出一个小游戏的时候,是不是很想发给你的小伙伴分享一下你的成果?但是,如果直接将xx.py文件发给别人,别人通常是不能直接运行的,他 ...

  3. 怎么把python程序发给别人_想把你写的Python程序发给别人用?打包成exe啊!

    前言 大家好,欢迎来到编程教室! 当你学了一段时间Python,终于写出一个小游戏的时候,是不是很想发给你的小伙伴分享一下你的成果?但是,如果直接将xx.py文件发给别人,别人通常是不能直接运行的,他 ...

  4. python+unity表情驱动二(打包成exe)

    python+unity表情驱动工具二(打包成exe) 使用pyinstaller在控制台打包 工具的使用效果 使用pyinstaller在控制台打包 这里并没有使用auto-py-to-exe界面工 ...

  5. python爬虫淘宝手机_【Python3 爬虫】14_爬取淘宝上的手机图片

    现在我们想要使用爬虫爬取淘宝上的手机图片,那么该如何爬取呢?该做些什么准备工作呢? 首先,我们需要分析网页,先看看网页有哪些规律 我们可以看到左侧是主题市场,将鼠标移动到[女装/男装/内衣]这一栏目, ...

  6. python爬虫淘宝实例-Python——爬虫实战 爬取淘宝店铺内所有宝贝图片

    之前用四篇很啰嗦的入门级别的文章,带着大家一起去了解并学习在编写爬虫的过程中,最基本的几个库的用法. 那么今天,我们就正式开始我们的第一篇实战内容,爬取一整个淘宝店铺里的所有宝贝的详情页,并且把详情页 ...

  7. python爬虫淘宝登录_淘宝的模拟登录(python3+selenium)

    淘宝登录 爬数据的前提是要先登录,那么先来说怎么使用python3+selenium登录淘宝的. 一.登录前的准备工作 关于一开始做登录时,一直会出现滑块,这个滑块怎么滑都通过不了,后来才知道是淘宝有 ...

  8. python爬虫淘宝评论_Python爬取淘宝店铺和评论

    1 安装开发需要的一些库 (1) 安装mysql 的驱动:在Windows上按win+r输入cmd打开命令行,输入命令pip install pymysql,回车即可. (2) 安装自动化测试的驱动s ...

  9. python爬虫淘宝登录_python爬虫实现模拟淘宝登录

    就算所有人都不支持你.这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾. python爬虫模拟淘宝登录 小贴士 这个爬虫和搜索引擎的爬虫是有区别的.搜 ...

最新文章

  1. conda安装qiime2-清华镜像源替换法解决安装失败
  2. Python教程: 闭包及陷阱
  3. 异步Socket通信总结[转]
  4. JAVA-WBE——spring security 3.2 认证-学习笔记2
  5. 无影云电脑居家办公最佳实践(AD域账号)
  6. python turtle 绘图_谈一下Pycharm中关联系统Python解释器的方法
  7. 线性表----循环链表和静态链表
  8. 作者:丁铖(1992-),男,华东师范大学计算机科学与软件工程学院硕士生。...
  9. Typora一次编辑,知乎、CSDN等多平台快速发布:Typora + PicGo + 图床
  10. linux mint如何安装输入法(以google输入法为例)
  11. 解决炉石传说战网无法更新问题
  12. 判断语句——switch case
  13. ChineseGLUE:为中文NLP模型定制的自然语言理解基准
  14. 关于树莓派(四):安装树莓派时遇见的错误
  15. 利用Java语言编写一个猜数字游戏(有次数限制)
  16. 汽车ABS控制器设计及车身稳定算法研究笔记(二)——ABS控制器硬件设计及调试
  17. 曲线拟合最小二乘法优缺点_对最小二乘法拟合曲线的简单说明
  18. vue前端导出excel,js-xlsx、xlsxStyle,可设置样式、表格合并;(包含获取excel列数函数、excel合并表格缺少边框处理函数)
  19. 给apple老师建议
  20. delegate用法

热门文章

  1. 企业IT人的交流盛宴!2022FineDay用户大会暨帆软新品发布会即将开幕!
  2. openssl交叉编译流程
  3. 试用SQL语句创建一个工资总额超过20万元(含20万元)的各部门工资总额视图V-SAL...
  4. 男人的腰:理性之下欲望之上
  5. Pytorch实战2:ResNet-18实现Cifar-10图像分类(测试集分类准确率95.170%)
  6. UI基础四:简单的assign block
  7. 计算机网络--七层结构(三)会话、表示、应用层详解
  8. 欢迎进入Hensen_的博客目录(全站式导航)
  9. 米兔积木机器人电机是腿吗_大人的玩具:米兔积木机器人够智能吗?
  10. [架构之路-39]:目标系统 - 系统软件 - Linux OS内核进程/线程调度的基本原理