Python入门第5篇(爬虫相关)

目录

爬虫初步说明

html相关基础

urllib之读取网页内容

http相关基础

requests之webapi调用


爬虫初步说明

爬虫,一句话来说,即模拟浏览器爬取一些内容,如自动下载音乐、电影、图片这种的

具体可能是直接访问网页进行解析,也可能是调用webapi直接获取数据,后者应该更多一些

html相关基础

html、js、css构成了html的三要素

urllib之读取网页内容

python 复制代码
from urllib.request import urlopen

url='http://www.baidu.com'
con=urlopen(url)
cons=con.read()

with open('./output.html','wb') as f:
    f.write(cons)

print(cons)

这里是打开了百度首页,然后写入到一个本地html文件,注意这里使用wb方式写入(字节流)

注意:需要通过pip安装urllib

http相关基础

三次握手

四次挥手

http方法:get、post

requests之webapi调用

python 复制代码
import requests
import json

def fanyi(inputStr):
    txt=input("请输入要翻译的内容:")
    url="https://fanyi.baidu.com/sug"
    data={
        "kw":txt
    }
    result=requests.post(url,data=data)
    # print(result.text)
    # printInfo(result.json())
    printInfo(result.json()["errno"])
    # printInfo(type(result.json()))
    print("翻译结果:")
    for i in range(len(result.json()["data"])):
        printInfo(str(i+1)+":"+result.json()["data"][i]["v"])

if __name__=="__main__":
    fanyi("我的翻译机器人")
    pass

这里一百度翻译接口为例,通过输入待翻译内容,然后调用翻译接口,将接口返回结果进行解析,输出翻译结果

注意:需要通过pip安装requests

主要用到的就是get、post

这里需要注意header、body这些参数,要根据实际网页请求的内容来,也可以先用postman、apipost测试

再一个需要注意的是,对于返回结果的解析,需要先清楚其类型,才可以更好的解析,如使用type()先打印下类型,就知道下一步要怎么解析了

相关推荐
恋恋西风1 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx1 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_2 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_2 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu2 小时前
CSharp: 万年历
开发语言·后端·c#·.net
傲笑风2 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
我找到地球的支点啦3 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
维基框架3 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
予昊3 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_461408583 小时前
Mybatis-flex小记
java·开发语言·mybatis