2023爬虫学习笔记 -- 某狗网站爬取数据

news/2024/7/19 19:36:09 标签: 网络爬虫, 学习笔记

一、爬取某狗网站的首页

1、导入需要的库文件

import requests

2、指定我们要访问的网址

网页="https://www.sogou.com"

3、获取服务器的返回的所有信息

响应=requests.get(网页)

4、通过text属性,从返回信息中读取字符串内容

响应内容=响应.text

5、查看读取到的内容

print(响应内容)

6、将读取到的内容存放起来

withopen("sogou.html","w") as 数据:    数据.write(响应内容)

7、程序执行完毕

print("存储数据成功!!!")

8、预览我们保存的sogou.html页面

9、保存的内容有乱码,所以我们保存的时候要指定编码格式

withopen("sogou.html","w",encoding="utf-8") as 数据:    数据.write(响应内容)

二、实现搜索功能

1、搜狗首页输入要搜索的内容

2、分析搜索的网址,query后面跟着的就是想要搜索的内容

https://sogou.com/web?query=python

3、设置要搜索的关键字,修改上面的程序

搜索关键字=input("请输入要搜索的关键字:")网页="https://sogou.com/web?query="+搜索关键字

4、重新运行程序,输入要搜索的关键字,按回车键

5、浏览保存的文件,又报错了,检测到了异常

6、给他加上一个头信息,加上浏览器指纹

头={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"}响应=requests.get(网页,headers=头)

7、运行结果

三、如果传递多个参数,可以将参数写成一个字典形式

参数={"query":搜索关键字}响应=requests.get(网页,params=参数,headers=头)

四、最终源码

import requests搜索关键字=input("请输入要搜索的关键字:")​参数={"query":搜索关键字}​头={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"}## 网页="https://sogou.com/web"网页="https://sogou.com/web?query="+搜索关键字响应=requests.get(网页,params=参数,headers=头)响应内容=响应.textprint(响应内容)​with open("sogou.html","w",encoding="utf-8") as 数据:    数据.write(响应内容)​print("存储数据成功!!!")​

http://www.niftyadmin.cn/n/31736.html

相关文章

AXI 总线协议学习笔记(2)

引言 从本文开始,正式系统性学学习AXI总线。 如何获取官方协议标准? 第一步:登陆官网:armDeveloper 第二步:登录,无账号需要注册 第三步:点击文档 第四步: 第五步:浏…

每天一道大厂SQL题【Day02】电商场景TopK统计

每天一道大厂SQL题【Day02】 大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题,以每日1题…

【算法基础】整数二分查找法

👦个人主页:Weraphael ✍🏻作者简介:目前是C语言学习者 ✈️专栏:【C/C】算法 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞…

【C++】从0到1入门C++编程学习笔记 - 提高编程篇:STL常用容器(string容器)

文章目录一、string基本概念二、string构造函数三、string赋值操作四、string字符串拼接五、string查找和替换六、string字符串比较七、string字符存取八、string插入和删除九、string子串一、string基本概念 本质: string是C风格的字符串,而string本质…

通信原理笔记—基带信号的功率谱

目录 二进制纯随机序列基带信号的功率谱: 基带信号的功率谱分析: (1)信号(t)的功率谱: (2)信号v(t)的功率谱: 随机序列S(t)的功率谱: 二进制纯随机序列基带信号的功率谱: 基带信号的功率谱分析&#…

重写QTableView类解决鼠标右击、单击、双击问题(附使用方法)

目录 一.重写响应事件 1.区分单击和右击 如何使用 2.区分单击和双击 3.其他修改 二.eventFilter截获事件(待验证) 界面上的QTableView在点击右键想出现右键事件的时候,同时把单击对应的槽函数执行了一遍,所以需要处理做一下…

什么是公网IP?公网IP和内网IP的区别

什么是IP地址 IP地址,全称(Internet Protocol Address)翻译成中文就是指互联网协议地址,所有的计算机分配一个统一格式的、唯一的虚拟地址编号。就像每个人都有一个身份证一样,IP地址就是每台计算机都有自己上网用的身…

[深度学习] inplace operation 的错误 -> 训练模型方向导致

项目场景: 在深度学习的时候,项目需要用到拮抗网络的知识, 就按照文字上的要求进行建模,结果发生了Inplace operation 研究了半天也不知道Inplace 到底在哪里, 后来终于发现了原因,所以赶紧记下来。 Created with Rap…