1.下载一张图片代码1

import urllib.request

response = urllib.request.urlopen('http://photocdn.sohu.com/20100906/Img274741430.jpg')

image = response.read()

with open('D:\\cat_200_300.jpg','wb') as f: #打开文件
f.write(image) #写入文件

2.下载一张图片代码2

import urllib.request

request = urllib.request.Request('http://photocdn.sohu.com/20100906/Img274741430.jpg')
response = urllib.request.urlopen(request) image = response.read() with open('D:\\cat_200_300.jpg','wb') as f:
f.write(image)

3.获取请求的url

> request.get_full_url()
'http://photocdn.sohu.com/20100906/Img274741430.jpg

4.获取响应码

response.getcode()
200

5.获取响应信息

response.info()
<http.client.HTTPMessage object at 0x03015850>
>>> print(response.info())

Server: Tengine
Content-Type: image/jpeg
Content-Length: 32052
Connection: close
Date: Wed, 11 Oct 2017 02:59:56 GMT
Last-Modified: Mon, 06 Sep 2010 08:27:47 GMT
Expires: Tue, 09 Jan 2018 02:59:56 GMT
Cache-Control: max-age=7776000
X-RS: 34079416.44499832.45112407
X-RS: 10888362.20063412.11942198
FSS-Cache: MISS from 6562920.11412594.7616690
FSS-Proxy: Powered by 6497640.11281778.7551665
Accept-Ranges: bytes
Via: cache14.l2et15-2[0,200-0,H], cache18.l2et15-2[1,0], cache2.cn869[80,200-0,M], cache9.cn869[81,0]
Age: 7118675
X-Cache: MISS TCP_MISS dirn:-2:-2 mlen:-1
X-Swift-SaveTime: Mon, 01 Jan 2018 12:24:31 GMT
X-Swift-CacheTime: 657325
Timing-Allow-Origin: *
EagleId: 767b029d15148094715568685e

6.访问有道词典查询单词

import urllib.request
import urllib.parse url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
data = {}
data['i'] = 'I love you'
data['type'] = 'AUTO'
data['doctype'] = 'json'
data['version'] = '2.1'
data['keyfrom'] = 'fanyi.web'
data['typoResult'] = 'true' data = urllib.parse.urlencode(data).encode('utf-8') response = urllib.request.urlopen(url,data) html = response.read().decode('utf-8') print(html)

7.结果json数据

{"type":"EN2ZH_CN","errorCode":0,"elapsedTime":1,"translateResult":[[{"src":"I love you","tgt":"我爱你"}]]}

8.处理查询的数据,将json转化为字典

import json
target =  json.loads(html)
{'type': 'EN2ZH_CN', 'errorCode': 0, 'elapsedTime': 1, 'translateResult': [[{'src': 'I love you', 'tgt': '我爱你'}]]}

9.获取翻译的数据

target['translateResult'][0][0]['tgt']

10.有道词典

import urllib.request
import urllib.parse
import json while True:
text = input('请输入要翻译的文字:')
if text == 'exit':
break url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
data = {}
data['i'] = text
data['type'] = 'AUTO'
data['doctype'] = 'json'
data['version'] = '2.1'
data['keyfrom'] = 'fanyi.web'
data['typoResult'] = 'true' data = urllib.parse.urlencode(data).encode('utf-8') response = urllib.request.urlopen(url,data) html = response.read().decode('utf-8') target = json.loads(html) print(target['translateResult'][0][0]['tgt'])
print('输入exit退出程序!')

'我爱你'

代理

Python下载一张图片与有道词典的更多相关文章

  1. 如何用python下载一张图片

    如何用python下载一张图片 这里要用到的主要工具是requests这个工具,需要先安装这个库才能使用,该库衍生自urllib这个库,但是要比它更好用.多数人在做爬虫的时候选择它,是个不错的选择. ...

  2. python学习笔记:"爬虫+有道词典"实现一个简单的英译汉程序

    1.有道的翻译 网页:www.youdao.com Fig1 Fig2 Fig3 Fig4 再次点击"自动翻译"->选中'Network'->选中'第一项',如下: F ...

  3. Ubuntu14.04安装有道词典

    Ubuntu14.04安装有道词典之前要更新系统: sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade 在有道官网下载 ...

  4. 调用网易有道词典api

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #调用网易有道词典api import urllib import json class Youdao(): ...

  5. python:爬虫1——实战(下载一张图片、用Python模拟浏览器,通过在线的有道词典来对文本翻译)

    一.下载一只猫 import urllib.request response = urllib.request.urlopen("http://cdn.duitang.com/uploads ...

  6. python "爬虫+有道词典"实现一个简单翻译程序

    抓包软件使用的是Fiddler4 新版的查询接口 比较负责,引入了salt和sign http://fanyi.youdao.com/translate?smartresult=dict&sm ...

  7. 使用python拼接多张图片.二三事

    前几日在博客上看到一篇“使用python拼接多张图片”的Blog[具体是能将的图片名字必须是形如xx_1.png ... xx_100.png或者xx_001.png ... xx_100.png,拼 ...

  8. 基于pygtk的linux有道词典

    基于pygtk的linux有道词典 一.桌面词典设计 想把Linux用作桌面系统,其中一部分障碍就是Linux上没有像有道一样简单易用的词典.其实我们完全可以自己开发一款桌面词典, 而且开发一款桌面词 ...

  9. ubuntu14.04 下安装有道词典

    安装步骤 1.ubuntu14.04.1版本下是不能直接安装有道词典的,首先需要把14.04.版升级为14.04.2版. 在终端窗口中输入以下命令: sudo apt-get update sudo ...

随机推荐

  1. 微软云计算 Massive Data 处理语言Scope 1

    Massive Data处理一直是云计算中很重要的一个环节.目前像Google,Yahoo在相关方面都有自己专有的技术.例如Google的基于MapReduce的Sawzall语言.和Yahoo基于H ...

  2. memcached复制-repcached

    1.前言 由于memcached把数据都放到内存里,因此性能是极高的,正因为如此,不可避免会造成数据丢失,repcached就派上用场了,它可以实现memcached的主从复制 2.安装repcach ...

  3. LayoutInflater (转)

    在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...

  4. Servlet,JSP 中的中文乱码问题以及解决方案

    问题描述: 在Servlet,JSP 传递数据中,英文无影响,而中文有时候就会出现乱码. 解决方案: 相同的编码: 同一个项目中的每个文件应当设置和保存相同的编码方式,如: html中 <met ...

  5. js限制日期选择范围是两个月

    $(".dateInputClass input:eq(0)").bind("click", function(){WdatePicker({dateFmt:' ...

  6. Libevent 事件管理和添加事件

    /**   我们先来看一下事件的创建*/struct event * event_new(struct event_base *base, evutil_socket_t fd, short even ...

  7. Dubbo源码学习--服务发布(ProxyFactory、Invoker)

    上文分析了Dubbo服务发布的整体流程,但服务代理生成的具体细节介绍得还不是很详细.下面将会接着上文继续分析.上文介绍了服务代理生成的切入点,如下: Invoker<?> invoker ...

  8. “玲珑杯”ACM比赛 Round #22 E 贪心,脑洞

    1171 - 这个E大概是垃圾桶捡来的 Time Limit:2s Memory Limit:128MByte Submissions:138Solved:45 DESCRIPTION B君在做 CO ...

  9. Java分布式锁之数据库实现

    之前的文章<Java分布式锁实现>中列举了分布式锁的3种实现方式,分别是基于数据库实现,基于缓存实现和基于zookeeper实现.三种实现方式各有可取之处,本篇文章就详细讲解一下Java分 ...

  10. 学校的c++程序课程设计(简单的写法 并无太多c++的特色)

    好久没更新博客了,最近一直在忙,花了一天时间做出这个简陋版的课程设计, 为了储存,也为了更新,所以于今天更新我的博客. 我选的课程设计题目如下: 某某公司的设备管理系统 功能及要求描述: (1)公司主 ...