爬虫基础训练题

news2024/11/17 23:49:27

1.抓取imooc网站实战课程部分的课程名称(所有课程大概7页,抓取1到5页),并把所有课程名称存储为txt文件第一页地址

2.设置一个请求头(headers),这是一个字典,用于在HTTP请求中设置请求头信息。在这里,请求头信息被设置为一个Chrome浏览器的User-Agent字符串。

3.定义一个URL(url),这个URL是你要爬取的网页的链接。

4.使用requests.get方法发送一个GET请求到上面定义的URL,获取网页的内容,并将响应内容保存到response变量中。

5.使用一个for循环,循环遍历页码范围为1到5(共5页)。

在循环内,对于每一页:

  1. 使用requests.get方法发送GET请求到URL,这个URL的页码是循环变量page的值,获取页面的内容,并将响应内容保存到res变量中。
  2. 设置响应内容的编码方式为utf-8。
  3. 将响应内容保存到r变量中。
  4. 使用etree.HTML方法解析响应内容,并将解析结果保存到s变量中。

6.使用XPath表达式从解析的HTML中提取课程名称。XPath表达式为://a/p[@class='title ellipsis2']/text()。提取到的课程名称保存在变量courseName中。

7.使用open函数以追加模式打开文件"courselist.txt",如果文件不存在则创建该文件。

8.在文件内写入当前页码,然后将课程名称列表转换为字符串,每个课程名称之间用分号分隔,并写入文件。最后写入一个换行符。

9.关闭文件

源代码截图:

courselist.txt内容截图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1547968.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

win10硬盘格式化后数据还能恢复吗?提供恢复步骤

在使用电脑的过程中,可能会出现需要格式化硬盘的情况。但是在进行格式化后,是否还有可能恢复已经删除的数据呢?本文将探讨Win10系统下硬盘格式化后数据恢复的可能性,为您提供一些实用的恢复步骤。 图片来源于网络,如有…

电脑windows 蓝屏【恢复—无法加载操作系统,原因是关键系统驱动程序丢失或包含错误。.......】

当你碰到下图这种情况的电脑蓝屏,先别急着重装系统,小编本来也是想重装系统的,但是太麻烦,重装系统后你还得重装各种软件,太麻烦了!! 这种情况下,你就拿出你的启动U盘,进…

“量子进展未达预期”:五角大楼推新举措,应对潜在军事危机

在当今快速变化的科技领域,量子技术以其革命性的潜力成为了一个关键焦点。这一技术预示着计算能力的巨大飞跃,也是对传统信息安全观念的全面挑战。在量子计算、通信和加密领域,其发展可能彻底改变我们处理数据和保护信息的方式。在全球范围内…

域风网:韩国.KR域名注册量分析

近年来,随着韩国经济实力和科技实力的不断提升,该国域名注册量呈现爆发式增长,充分展现了韩国在互联网时代的重要地位。 数据显示,截至2023年6月,韩国的顶级域名(.KR)注册量已超过360万个,较2018年同期激增近40%。这一数字不仅在全球名列前茅,也远超同期其他亚洲主要国家的域名…

使用Urllib库创建第一个爬虫程序

Urllib 是 Python 的标准库,它提供了一系列用于处理 URL 的函数和类,包括发送 HTTP 请求、处理 HTTP 响应、解析 URL 等功能。可以使用 urllib 来编写简单的网络爬虫。 request:它是最基本的HTTP请求模块,可以用来模拟发送请求。只…

STL模板 map set的使用和模拟实现

前言: 在本篇文章中,我们将为大家讲述map set这两种容器,map和set是STL容器中比较常见的两个,他们的核心在于使用了KV模型,这样更进一步让我们可以对数据进行存储,同时由于底层使用了红黑树进行封装,因此在…

what is apache?

Apache 通常指 Apache Software Foundation (ASF) 或 Apache HTTP Server,两者都是计算机软件领域的重要实体。 Apache 软件基金会 (ASF):Apache 软件基金会是一个开发开源软件项目的非营利组织。它为涵盖软件开发各个方面的广泛项目提供支持&#xff0c…

面试官:tree-shaking的原理是什么?

公众号:程序员白特,欢迎一起交流学习~ 原文:https://juejin.cn/post/7265125368553685050?share_token301335cf-a17e-4115-94f0-264fe0e82f07 前言 在前端面试的过程中,前端工程化一直是考察面试者能力的一个重点,而…

nginx代理服务后,有关文件的操作无法执行,nginx代理jupyter或为知笔记后无法创建文件及文件夹,无法操作文件

nginx配置 server {listen 18001; # 修改转发的接口listen [::]:18001; # 修改转发的接口server_name _;root /usr/share/nginx/html;location / {proxy_pass http://127.0.0.1:7777; # 指定自己服务地址proxy_set_header Host $host;}# Load configurat…

【C语言】Infiniband驱动__mlx4_init_one函数

一、注释 Linux内核驱动程序中的部分,属于Mellanox网卡驱动mlx4的初始化过程。 // Mellanox 以太网驱动主程序代码 static int __mlx4_init_one(struct pci_dev *pdev, int pci_dev_data,struct mlx4_priv *priv) {int err; // 错误码变量int nvfs[MLX4_MAX_PORTS…

【C++】从C到C++、从面向过程到面向对象(类与对象)

文章目录 C入门知识C与C的关系1. 类的引入:从结构体到类2. 类的声明和定义3. 类的作用域4. 类的访问限定符5. 面向对象特性之一:封装6. 类的实例化:对象7. 计算类对象的内存大小8. 成员函数中暗藏的this指针9. 类的六个默认生成的成员函数9.1…

【二叉树】Leetcode 226. 翻转二叉树【简单】

翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 解题思路 二叉树翻转操作是指将二叉树中每个节点的左右子树进行交换。具体…

[Android]模拟器登录Google Play失败

问题: 模拟器登录Google Play失败,提示couldnt sign in there was a problem communicating with google servers. try again later. 原因: 原因是模拟器没有连接到互联网,打开模拟器中Google浏览器进行搜索一样不行。 解决&am…

虚拟机如何在原有磁盘上扩容

虚拟机未开启状态–菜单栏–虚拟机–快照–拍摄快照–拍摄快照– 菜单栏–虚拟机–快照–快照管理器–点击刚刚的快照1–删除–是– 文件–新建或者打开–硬盘(以本人Win 10.64.3GL为例)–虚拟机设置–硬件– 硬盘(SATA)–磁盘实…

赛氪网亮相中国人工智能产业发展联盟会议,共筑赛事生态新篇章

2024年3月14日至15日,备受瞩目的中国人工智能产业发展联盟(AIIA)第十一次全体会议在海南海口盛大召开。作为人工智能领域的重要交流与合作平台,此次会议吸引了300余位联盟成员单位代表齐聚一堂,共襄盛举。在这场人工智…

梵宁教育:助力大学生掌握设计新技能

在当今数字化、信息化的社会里,设计技能的重要性日益凸显。设计不仅仅局限于美术或艺术领域,它已经渗透到各行各业,从产品外观到用户界面,从品牌形象到营销策划,设计无处不在。对于大学生而言,掌握设计新技…

ts enum elementUI 表格列表中如何方便的标识不同类型的内容,颜色区分 enum ts + vue3

ts enum elementUI 表格列表中如何方便的标识不同类型的内容,颜色区分 enum ts vue3 本文内容为 TypeScript 一、基础知识 在展示列表的时候,列表中的某个数据可能是一个类别,比如: enum EnumOrderStatus{"未受理" …

python如何获取word文档的总页数

最近在搞AI. 遇到了一个问题,就是要进行doc文档的解析。并且需要展示每个文档的总页数。 利用AI. 分别尝试了chatGPT, 文心一言, github copilot,Kimi 等工具,给出来的答案都不尽如人意。 给的最多的查询方式就是下面这种。 这个…

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测 目录 时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测(完整源码和数据…

kali系统下载,并在VMware免安装式打开kali虚拟机

Kali Linux | Penetration Testing and Ethical Hacking Linux Distribution 上面连接为官网连接 此安装过程也适合其他虚拟机的安装,也就是你曾经安装过的虚拟机,会保存一推文件,而这推文件,还可以用VMware再次打开。