Python学习笔记(2)

使用Python可以完成的一些简单的自动化操作。

使用Python下载一张图片

https://placekitten.com 是一个专门展示小猫图片的网站,在网址后面附上相应的宽度和高度就可以获得对应大小的图片。这样对新手就很友好,可以很方便地确定图片对象的URL,从而便于下载。

例如访问 https://placekitten.com/g/1080/1920 就可以获得一张宽度为1080,高度为1920的图片。

n4uCct.png

使用鼠标右击图片并选择“另存为”,就可以手动保存网页上的图片了。那么既然学习Python,自然就要用代码来实现自动下载图片。

1
2
3
4
5
6
import urllib.request

response = urllib.request.urlopen("http://placekitten.com/g/200/300")
cat_img = response.read()
with open('cat_1080_1920.jpg','wb')as f:
f.write(cat_img)

运行代码后就可以在代码文件所在目录下看到一张JPG图片。这里的urlopen函数返回的是一个类文件对象,所以可以使用read()方法来读取其内容。

使用Python调用第三方翻译平台实现字符串翻译

1.明白翻译的基本过程(使用开发者工具)

目前主流浏览器都集成了开发者工具,一一般按快捷键F12都可以呼出开发者工具。这里笔者以Chrome浏览器为例,查看从打开有道到实现翻译的通信过程。

先行知识

HTTP: HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

POST: 提交数据

GET: 请求数据

备注

但是Chrome的开发者工具默认状态下可能不会直接显示Method字段(Firefox浏览器默认设置下似乎是直接显示Method字段的)导致无法快速确认哪些是POST请求哪些是GET请求。下图演示了如何开启Method字段显示的方法。

chrome_method.gif

访问有道并打开开发者工具,输入中文字符串后会进行自动翻译,这时候可以从开发者选项中找到POST请求项,单击打开该项就可以查看请求的详细内容。

分析通过开发者工具查看到的POST内容:

请求的详细内容.png

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
RequestUrl: http://fanyi.youdaocom/translateo?smartresult=dict&smartresult=r......

#请求的链接地址

Request Method: POST

#请求的方法,这里是POST

Status Code: 200 OK

#状态码,200表示正常响应

Remote Address: 220. 181.76. 83: 80

#服务器的IP地址

n4afHJ.png

1
User-Agent: Mozilla/5.0(Windows NT 10.0; Win64; x64) AppleWebkit/537.36(KHTML,like Gecko)Chrome/76.0.3809.100 Safari/537.36

#Request Header通常被服务器用来判断客户发送的请求是否来自“非人类”,浏览器还会通过User-Agent

内容向你正在访问的网站提供你的基本信息。如果直接使用Python访问网站的话,User-Agent会被定义为Python-urllib/3.4。当然User-Agent是可以自定义的。

n4dDqe.png

在Form Data中可以看到POST提交的内容。

本文标题:Python学习笔记(2)

文章作者:zzzain46

发布时间:2019年09月17日 - 09:09

最后更新:2019年11月15日 - 22:11

原始链接:https://www.52debug.cn/posts/c92e4706.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

如果你觉得我的文章对你有用,请随意打赏!
0%