一、下载一只猫

import urllib.request

response = urllib.request.urlopen("http://cdn.duitang.com/uploads/item/201111/24/20111124222137_wHYwc.jpg")
cat_img = response.read() with open('cat_0.jpeg', 'wb') as f:
f.write(cat_img)

urlopen()中的url可以是string,也可以是request object,因此可以是:

import urllib.request

req = urllib.request.Request("http://cdn.duitang.com/uploads/item/201111/24/20111124222137_wHYwc.jpg")
response = urllib.request.urlopen(req)
cat_img = response.read() with open('cat_0.jpeg', 'wb') as f:
f.write(cat_img)

response.geturl()得到url地址

response.info()得到HTTPMessage对象,可以通过print()得到head信息

response.getcode()得到服务器的状态码200(正常响应)

二、利用有道词典翻译文本

<审查元素>network——preview,找到需要的path

然后切到headers——关注general、request headers(客户端发送请求的headers,服务端可以在此判断是否人为访问,User-Agent)python url/3.4、From Data、

urlopen()中data为None以get提交,有参数用post方式提交,data参数必须是一个标准格式application/x-www-form-urlencoded,可以用urllib.parse.urlencode()来将字符串转化为这个格式

import urllib.request
import urllib.parse
import json url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule&sessionFrom=http://fanyi.youdao.com/' data = {
'i':'china',
'from':'AUTO',
'to':'AUTO',
'smartresult':'dict',
'sign':'cf928c9af5dc3731276ad09db002e052',
'client':'fanyideskweb',
'salt':'',
'doctype':'json',
'version':'2.1',
'keyfrom':'fanyi.web',
'action':'FY_BY_CLICKBUTTON',
'typoResult':'true'
} data = urllib.parse.urlencode(data).encode('utf8')
response = urllib.request.urlopen(url, data)
html = response.read().decode('utf-8') print(html)    #发现是json格式 target = json.loads(html) print(target)   #打印还原的json

但是当客户端码是python,并且当一个ip访问太多后,服务器会拉黑ip!

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

  1. 利用python爬虫关键词批量下载高清大图

    前言 在上一篇写文章没高质量配图?python爬虫绕过限制一键搜索下载图虫创意图片!中,我们在未登录的情况下实现了图虫创意无水印高清小图的批量下载.虽然小图能够在一些移动端可能展示的还行,但是放到pc ...

  2. Python 爬虫入门实战

    1. 前言 首先自我介绍一下,我是一个做 Java 的开发人员,从今年下半年开始,一直在各大技术博客网站发表自己的一些技术文章,差不多有几个月了,之前在 cnblog 博客园加了网站统计代码,看到每天 ...

  3. Python爬虫之多线程下载豆瓣Top250电影图片

    爬虫项目介绍   本次爬虫项目将爬取豆瓣Top250电影的图片,其网址为:https://movie.douban.com/top250, 具体页面如下图所示:   本次爬虫项目将分别不使用多线程和使 ...

  4. Python爬虫之多线程下载程序类电子书

      近段时间,笔者发现一个神奇的网站:http://www.allitebooks.com/ ,该网站提供了大量免费的编程方面的电子书,是技术爱好者们的福音.其页面如下:   那么我们是否可以通过Py ...

  5. Python爬虫从入门到进阶(1)之Python概述及爬虫入门

    一.Python 概述 1.计算机语言概述 (1).语言:交流的工具,沟通的媒介 (2).计算机语言:人跟计算机交流的工具 (3).Python是计算机语言的一种 2.Python编程语言 代码:人类 ...

  6. Python爬虫个人记录(四)利用Python在豆瓣上写一篇日记

    涉及关键词:requests库 requests.post方法 cookies登陆 version 1.5(附录):使用post方法登陆豆瓣,成功! 缺点:无法获得登陆成功后的cookie,要使用js ...

  7. Python核心技术与实战——十九|一起看看Python全局解释器锁GIL

    我们在前面的几节课里讲了Python的并发编程的特性,也了解了多线程编程.事实上,Python的多线程有一个非常重要的话题——GIL(Global Interpreter Lock).我们今天就来讲一 ...

  8. 爬取网易云音乐评论!python 爬虫入门实战(六)selenium 入门!

    说到爬虫,第一时间可能就会想到网易云音乐的评论.网易云音乐评论里藏了许多宝藏,那么让我们一起学习如何用 python 挖宝藏吧! 既然是宝藏,肯定是用要用钥匙加密的.打开 Chrome 分析 Head ...

  9. Python 爬虫 Vimeo视频下载链接

    python vimeo_d.py https://vimeo.com/228013581 在https://vimeo.com/上看到稀罕的视频 按照上面加上视频的观看地址运行即可获得视频下载链接 ...

随机推荐

  1. opencv::直方图计算

    直方图概念 上述直方图概念是基于图像像素值,其实对图像梯度.每个像素的角度.等一切图像的属性值,我们都可以建立直方图.        这个才是直方图的概念真正意义,不过是基于图像像素灰度直方图是最常见 ...

  2. 基于canvas实现钟表

    原理说明 1.通过arc方法实现钟表外环: 2.通过line实现钟表时针,分针,秒针和刻度标志的绘制,基于save和restore方法旋转画布绘制不同角度的指针: 3.通过font方法实现在画布上绘制 ...

  3. 22.Linux定时任务

    1.计划任务时间管理 参数 含义 -e 编辑定时任务 -l 查看定时任务 -r 删除定时任务 -u 指定其他用户 \* 表示任意的(分.时.日.月.周)时间都执行 \- 表示一个时间范围段, 如5-7 ...

  4. Open vSwitch系列之一 Open vSwitch诞生

    Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs 2006年,SDN诞生于美国GENI项目资助的斯坦福大学Clean Slate课题 ...

  5. 微信支付 get_brand_wcpay_request fail,Undefined variable: openid

    本文将为您描述微信H5支付,微信JSAPI支付返回支付签名验证失败的解决方法 微信JSAPI支付时报这个错误 查看错误详情 alert(JSON.stringify(res)) 微信商户平台相关设置: ...

  6. Java基础(42)AbstractSet类

    AbstractSet类的子类有HashSet(其子类是LinkedHashSet).EnumSet.TreeSet 1.HashSet public class HashSet<E> e ...

  7. 如何上传项目至GitHub

    1.下载 https://gitforwindows.org/ 2.打开Git Bash 把git绑定到GitHub 3.打开GitHub登陆后 点击settings 点击SSH and GPG ke ...

  8. 深入理解.NET Core的基元(二) - 共享框架

    原文:Deep-dive into .NET Core primitives, part 2: the shared framework 作者:Nate McMaster 译文:深入理解.NET Co ...

  9. zabbix导入数据库报错1046 (3D000) : No database selected

    Zabbix导入数据库时报错 使用如下命令导入Zabbix数据库时报错 zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u ...

  10. yii2中commands的简单应用

    class HelloController extends Controller { /** * This command echoes what you have entered as the me ...