入门级用Python写一个简单的网络爬虫下载和获取数据

学会如何使用API
通过url(Uniform Resource Locator 统一资源定位符)连接网络,获取网站的API
获取url存储的API,request执行获取的url
requests.get(url) 
定义一个变量,将API响应存储在里面,调用json将r存储的api转换成字典
rd = r.json()    


如何在网站上下载文件
可以调用这个方法urllib.request.urlopen("http://placekitten.com/g/800/800"),打开网站,将这个api存放在一个变量response里
再定义一个变量file_img 调用response.read()来读取那个网站的信息,储存到file_img
调用with open('cat_800_800.jpg','wb') as f: 
    f.write(cat_img)
写入这个文件
查看网站信息,可以打印api存放的变量,出现网站连接,也可以用这样的方法a = response.geturl()   print(a)




以下是完整代码
import urllib.request


response = urllib.request.urlopen("http://placekitten.com/g/800/800") //后面的800/800是可以修改的,不同的数值下载的内容就不一样
cat_img = response.read()
print(response)
with open('cat_800_800.jpg','wb') as f:
    f.write(cat_img)
a = response.geturl()
print(a)
这里会下载一个小猫的图片


下面是利用爬虫访问获取网站,浏览网站的信息
这里的Demo用的是有道翻译的数据
import urllib.request
import urllib.parse


url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc'
'''可以在浏览器上右击查看的源代码'''
data = {
    "type": "AUTO",
    "i": "sentence", //这里可以输入你想翻译的字符串
    "doctype": "json",
    "xmlVersion": "2.1",
    "keyfrom": "fanyi.web",
    "ue": "UTF-8",
    "action": "FY_BY_CLICKBUTTON",
    "typoResult": "true"
} #这些参数要设对了


data = urllib.parse.urlencode(data).encode('utf-8')     #把Unicode形式转换成utf-8


response = urllib.request.urlopen(url,data)
html = response.read().decode('utf-8')   #转码 将utf-8解码成unicode的形式


print(html)    #打印出json结构的数据

猜你喜欢

转载自blog.csdn.net/qq_37504771/article/details/80502283