每日学习

今天学习爬取数据对网页的解析:

网页请求的过程分为两个环节:

  1. Request (请求):每一个展示在用户面前的网页都必须经过这一步,也就是向服务器发送访问请求。

Response(响应):服务器在接收到用户的请求后,会验证请求的有效性,然后向用户(客户端)发送响应的内容,客户端接收服务器响应的内容,将内容展示出来,就是我们所熟悉的网页请求

网页请求的方式也分为两种:

  1. GET:最常见的方式,一般用于获取或者查询资源信息,也是大多数网站使用的方式,响应速度快。
  2. POST:相比 GET 方式,多了以表单形式上传参数的功能,因此除查询信息外,还可以修改信息

get方法:

1.import requests        #导入requests包
2.url = 'http://www.cntour.cn/'
3.strhtml = requests.get(url)        #Get方式获取网页数据
4.print(strhtml.text)

post方法:

1.import requests        #导入requests包
2.import json
3.def get_translate_date(word=None):
4.    url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
5.    From_data={'i':word,'from':'zh-CHS','to':'en','smartresult':'dict','client':'fanyideskweb','salt':'15477056211258','sign':'b3589f32c38bc9e3876a570b8a992604','ts':'1547705621125','bv':'b33a2f3f9d09bde064c9275bcb33d94e','doctype':'json','version':'2.1','keyfrom':'fanyi.web','action':'FY_BY_REALTIME','typoResult':'false'}
6.    #请求表单数据
7.    response = requests.post(url,data=From_data)
8.    #将Json格式字符串转字典
9.    content = json.loads(response.text)
10.    print(content)
11.    #打印翻译后的数据
12.    #print(content['translateResult'][0][0]['tgt'])
13.if __name__=='__main__':
14.    get_translate_date('我爱中国')

还有就是要学会使用css选择器,方便对指定数据的爬取

作者:哦心有
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/haobox/p/14911296.html