python爬虫实验报告心得体会(Python爬虫登录查询并抓取学生成绩)

2024-06-20 15:18:32 2

python爬虫实验报告心得体会(Python爬虫登录查询并抓取学生成绩)

本文目录

Python爬虫登录查询并抓取学生成绩

***隐藏网址*** 上次,抓取学校班级的课表是一种简单的爬取,因为直接分析网页,获得自己所需要的数据即可。 ***隐藏网址*** (一)不要乱碰壁——明白第一点 (五)个人感悟 1.因为是刚开始学习爬虫知识,各种不懂,到处碰壁,可能一个小小的、很简单的点儿,在我的手里都要琢磨很久——对知识不了解,反复反复,一次又一次的error,一个一个地去百度,甚至一天下来,什么也解决,内心里都要快气炸了,有一种对自己“恨铁不成钢”的感觉,但是还是一次次选择去解决。 2.从学习这个装了很多软件,很多版本,或许Python的2.x和Python的3.x的不同吗,让我在安装第三方插件的时候,就匹配的这个问题上吃了一些苦头。让我想起那天,毕业的学长在实验室的一句话“先有广度,才有深度”。趁着自己年轻,多去接触不同的东西,无论是生活方面的,还是专业知识的,对自己都有很大的帮助!

python爬虫爬取只显示10个

一个借口几万条数据但是只返回十条_爬虫实践之爬取10000条菜谱数据2020-12-03 06:37:24 weixin_39990029 码龄5年关注be22f93fc7bbc7cbdd62166579a1fd22.png爬虫实践之XX行代码爬取10000菜谱数据什么是爬虫爬虫:又叫做 网络蜘蛛,是一段自动抓取互联网信息的程序,从互联网上抓取对于我们有价值的信息。点击这里了解Python爬虫介绍如何合法地爬虫有些网站不允许网络爬虫,或是对可爬取的内容做了限制,一个网站的爬虫协议可通过访问该网站的robots.txt文件获得以豆瓣网为例***隐藏网址***1fe03008a450885dc6da49785543e75c.png可以看到,豆瓣对于不同的访问者有不同的访问限制,其中对于用户名为 Wandoujia Spider的访问者,豆瓣不允许访问。我用到的菜谱网站对爬虫无限制,所以爬虫是合法的。e4025d9f5d8b96388efa942e0255d1f9.png本篇特色连续爬取10000个网页引入第三方库import requests #发送请求import re #正则表达式,用于提取网页数据import winsound #提醒程序运行结束import time #计算程序运行时间如果没有安装这些第三方库,可以在命令提示符中输入如下代码,进行下载pip install requests,re,winsound,time爬虫的三个步骤获取要爬取的所有网页的网址提取网页内容中的有用信息信息导出每个步骤对应一个函数Step_1 获取要爬取的所有网页的网址首先我们打开该网址,查看它的源代码0f0eb8b89c9bf17460bca4d47f017bab.png365621d25c80f92834853350c083a545.png网页源代码观察发现每道菜对应的网址在这个目录下9d729b843df3a746d70ea7af31a1d962.png用正则表达式获得该网址,写入列表中由于每一个网页只有十道菜,点击下一页后发现网页的变化规律为换页时网址只有数字改变d342d8422e16c48c9600a47a45a6d1c9.png可以看到最多有1000页,也就是有10000道菜fb279b42fcdd3cecf7cda79ba4a8ae53.png使用循环,将每一页的菜对应的网址都写入列表,每一次写入时写入一行列表,多次写入后,形成一个二维的列表,前两页的菜谱网址在二维列表中显示如下:31e3755dc8b45ec6f4dac3c05f261539.png代码如下all_url = #创建一个数组用于存储网页地址def get_all_url(n): #这个函数用于获得网页中的菜的全部网址 if(n==1):***隐藏网址*** else:***隐藏网址*** headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" } response = requests.get(url,headers=headers) #访问网页 response.encoding = "utf-8" #设置接收编码格式 pattern = re.compile(r’《a target="_blank" href="(*)"》’, re.S) #正则表达式提取网页中的网址,re.S表示在整个文本中进行匹配,如果不加re.S,将只在一行进行匹配 result = pattern.findall(response.text) #获取的网页结果存储到result里 all_url.append(result)#由于每页只有十道菜,result中只有前十条对应的是菜的网址,故我们只添加前十条 return all_url #作为返回值返回这个列表关于headers的说明在使用python爬虫爬取数据的时候,经常会遇到一些网站的反爬虫措施,一般就是针对于headers中的User-Agent,如果没有对headers进行设置,User-Agent会声明自己是python脚本,而如果网站有反爬虫的想法的话,必然会拒绝这样的连接。而修改headers可以将自己的爬虫脚本伪装成浏览器的正常访问,来避免这一问题。 点击这里了解详情关于编码格式utf-8 的说明utf-8,可以编码中文,大部分python编译器都默认编码方式为utf-8 点击这里了解详情Step_2 提取网页中的有用信息打开一道菜的网址,查看源代码,寻找我们需要的信息在哪里,然后用正则表达式获取,流程与上个函数获取网址相同主辅料信息在这里c0ddfd3110775bb8b71759f6927f26d4.png特征信息在这里(包括做法和口味)38c99c1a51137debcafe38ae3122e19a.pngdef get_info(resp,output): name_pattern = re.compile(r’《h1》(.*)《/h1》’)# 正则表达式获取菜名信息 food_pattern = re.compile(r’《span class="t"》(.*)《/span》《span class="a"》(.*)《/span》《/a》《/div》’)# 正则表达式获得主料信息 fixing_pattern = re.compile(r’《div class="c_mtr_li"》《span class="t1"》(.*)《/span》《span class="a"》(.*)《/span》《/div》’) # 正则表达式获得辅料信息 fearture1_pattern = re.compile(r’《div class="cpargs cpargs2"》《div class="i"》《/div》(.)《/div》’)# 正则表达式获得特征_1 fearture2_pattern = re.compile(r’《div class="cpargs cpargs3"》《div class="i"》《/div》(.*)《/div》’)# 正则表达式获得特征_2 name = name_pattern.findall(resp.text) # 提取菜名信息 food = food_pattern.findall(resp.text)# 提取主料信息 fixing = fixing_pattern.findall(resp.text)#提取辅料信息 fearture1 = fearture1_pattern.findall(resp.text) #提取特征_1 fearture2 = fearture2_pattern.findall(resp.text)#提取特征_2 output.write(str(name))#将菜名写入output文件,write函数不能写int类型的参数,所以使用str()转化 output.write(’t’)#进入下一个单元格 output.write(str(fearture1))#将特征_1写入output文件 output.write(’t’)#进入下一个单元格 output.write(str(fearture2))#将特征_2写入output文件 output.write(’t’)#进入下一个单元格 for i in range(len(food)): for j in range(len(food)): output.write(str(food)) #写入主料 output.write(’t’) if(len(food)《11): output.write(’t’*2*(11-len(food))) #每道菜的主料数目不同,该行代码可使表格内容对齐 for i in range(len(fixing)): for j in range(len(fixing)): output.write(str(fixing)) #写入辅料 output.write(’t’) output.write(’n’) #换行Step_3 信息导出def spider(): output = open(’E:programingpython苏菜_2.xls’,’w’,encoding=’utf-8’)#创建一个excel文件,编码格式为utf-8 output.write(’名称t做法t特色t主料’)#写入标题栏 output.write(’t’*22)#使内容对齐 output.write(’辅料n’)#写入标题栏 for i in range(len(all_url)): for j in range(len(all_url)): url2=all_url response = requests.get(url2)#逐个访问网页,获得数据 response.encoding = "utf-8" #设置接收编码格式 get_info(response,output)#处理数据,提取信息 output.close()#关闭文件主函数time_start = time.time()#记录程序开始时间for i in range(1,2):#逐页获取菜谱网页信息 get_all_url(i)spider()#进行提取处理并导出duration = 1000#提示音时长,1000毫秒 = 1秒freq = 440 #提示音频率time_end=time.time()#记录程序结束时间print(’totally cost’,time_end-time_start)#打印程序运行时间winsound.Beep(freq,duration*10) #响铃提示程序结束经实验,爬取10000条代码需要用时3453秒左右e8b6c8637980d2aef9587711c7084a5f.png最后获得的数据如下97a8662cf048844850658aef841e04c3.png写在后面我是一个C语言上不了80的小白,全靠某度和某歌东拼西凑我的这个程序,在代码风格与写作等方面存在不可避免地会有一些错误和不足的地方,希望大家多多与我交流,多多批评指教我。

python爬虫实验报告心得体会(Python爬虫登录查询并抓取学生成绩)

本文编辑:admin

更多文章:


专业电脑(专业电脑维修上门服务)

专业电脑(专业电脑维修上门服务)

专业电脑维修上门服务“专业电脑维修上门服务”是指一种服务模式,其核心内容与特点如下:一、基本概念:1. 含义:专业电脑维修上门服务指的是专业的技术人员根据客户需求,直接前往客户的所在地(如家庭或办公室)进行电脑维修、检测及维护的服务形式。2

2024年7月24日 01:25

thinkpad t490s(thinkpad t490s重量)

thinkpad t490s(thinkpad t490s重量)

thinkpad t490s重量关于ThinkPad T490s的重量,以下是相关信息:1. 整体概述:ThinkPad T490s是一款轻薄的商务笔记本电脑,专为移动办公和高效工作而设计。2. 重量:具体来说,ThinkPad T490s

2024年7月8日 14:03

东芝r100(东芝R100收音机)

东芝r100(东芝R100收音机)

东芝R100收音机东芝R100收音机是一款电子产品,以下是关于它的相关内容解释:1. 品牌与制造商:东芝R100收音机是由东芝公司制造的。东芝是一家知名的日本电子电器企业,其产品涵盖了许多领域,包括消费类电子产品。2. 产品特性:东芝R10

2024年7月27日 13:06

联想有上网本吗(联想的上网本)

联想有上网本吗(联想的上网本)

联想的上网本联想的上网本是一种轻便、便携的笔记本电脑,主要针对需要随时随地访问互联网的用户。以下是有关联想的上网本的相关内容解释:1. 定义与特点: - 定义:联想的上网本是一种专为网络应用而设计的轻便型笔记本电脑。 - 特点:通常

2024年7月21日 14:57

华硕官网驱动(英伟达怎么升级驱动)

华硕官网驱动(英伟达怎么升级驱动)

英伟达怎么升级驱动“英伟达”(NVIDIA)是一家全球知名的图形处理和人工智能计算技术公司。NVIDIA显卡驱动升级可以帮助提升显卡性能,稳定性和游戏体验等。以下是对“英伟达如何升级驱动”的条理清晰的解释:一、准备工具1. 英伟达官方网站或

2024年7月16日 02:01

gt240m(GT240m显卡)

gt240m(GT240m显卡)

GT240m显卡“GT240m显卡”是一款笔记本电脑的独立显卡,属于NVIDIA的中低端产品。以下是关于GT240m显卡的相关内容:1. 性能:GT240m显卡的性能可以满足一般日常使用和轻度游戏需求。它可以处理一些基本的图形和计算任务,但

2024年7月25日 17:00

三星笔记本电脑(三星笔记本电脑官网)

三星笔记本电脑(三星笔记本电脑官网)

三星笔记本电脑官网“三星笔记本电脑官网”是指由韩国三星电子公司运营的官方网站,专门针对其笔记本电脑产品进行展示、销售和服务。以下是关于“三星笔记本电脑官网”的相关内容解释:一、网站概述1. 产品展示:三星笔记本电脑官网会展示三星品牌的各类笔

2024年7月19日 06:11

thinkpad sl500(thinkpad Sl500 2009年日本卖多少钱)

thinkpad sl500(thinkpad Sl500 2009年日本卖多少钱)

thinkpad Sl500 2009年日本卖多少钱关于ThinkPad SL500在2009年在日本的销售价格,以下是相关信息:1. ThinkPad SL系列是联想的一款商务笔记本电脑系列,以其坚固耐用和实用性著称。SL500是该系列中

2024年7月11日 22:00

最新电脑报价(最新电脑报价大全)

最新电脑报价(最新电脑报价大全)

最新电脑报价大全“最新电脑报价大全”是一个涵盖了各种电脑产品及其价格的综合性信息集合。以下是关于“最新电脑报价大全”的详细解释:一、内容概述1. 电脑类型:最新电脑报价大全会包括各种类型的电脑,如台式机、笔记本电脑、一体机等。2. 配置信息

2024年7月23日 22:53

电脑声音失真(电脑声音失真怎么恢复)

电脑声音失真(电脑声音失真怎么恢复)

电脑声音失真怎么恢复电脑声音失真可能是由于多种原因造成的,如音频驱动程序问题、硬件故障、软件冲突等。以下是关于“电脑声音失真怎么恢复”的条理明确的解释:一、确定问题来源1. 音频驱动程序:首先检查音频驱动程序是否为最新版本,如果不是,请尝试

2024年7月17日 03:41

yoga11s(yoga11s换硬盘)

yoga11s(yoga11s换硬盘)

yoga11s换硬盘关于“Yoga 11s换硬盘”的相关内容,条理明确的解释如下:1. Yoga 11s:Yoga 11s是一款由联想(Lenovo)推出的笔记本电脑。它可能具有多种配置和型号,但都以Yoga系列为基础。2. 硬盘:硬盘是电

2024年7月17日 13:52

宏基笔记本电池修复(宏基笔记本电池修复软件)

宏基笔记本电池修复(宏基笔记本电池修复软件)

宏基笔记本电池修复软件“宏基笔记本电池修复软件”是一款用于修复宏基品牌笔记本电脑电池的软件程序。下面我将详细地为您解释关于该软件的相关内容:一、概述该软件主要是用于改善或修复宏基笔记本电脑电池的寿命和性能。通过对电池进行一系列的检测和修复操

2024年7月15日 05:46

联想14寸笔记本(联想14寸笔记本电脑长宽)

联想14寸笔记本(联想14寸笔记本电脑长宽)

联想14寸笔记本电脑长宽联想14寸笔记本电脑的长宽是指其屏幕的对角线长度为14英寸,而具体的长和宽则取决于屏幕的宽高比。通常来说,14寸笔记本电脑的屏幕宽高比为16:9或16:10,其具体尺寸可能因品牌和型号的不同而略有差异。以下是一个大致

2024年7月21日 05:30

华硕windows7旗舰版(华硕windows7旗舰版怎么开vt)

华硕windows7旗舰版(华硕windows7旗舰版怎么开vt)

华硕windows7旗舰版怎么开vt关于“华硕Windows 7旗舰版怎么开VT”的问题,以下是条理清晰的解释:一、VT(Virtualization Technology)的开启1. VT是虚拟化技术,可以增强系统的虚拟化能力,包括提高虚

2024年7月24日 00:26

笔记本专卖(笔记本专卖店和旗舰店哪个好)

笔记本专卖(笔记本专卖店和旗舰店哪个好)

笔记本专卖店和旗舰店哪个好关于“笔记本专卖店和旗舰店哪个好”的问题,这主要取决于消费者的具体需求和期望。以下是关于笔记本专卖店和旗舰店的一些相关信息和比较:1. 产品种类和品牌:笔记本专卖店:通常专注于笔记本产品,可能提供多个品牌和型号的笔

2024年7月8日 02:11

戴尔d43(戴尔D430笔记本参数配置)

戴尔d43(戴尔D430笔记本参数配置)

戴尔D430笔记本参数配置戴尔D430笔记本是一款商务型笔记本电脑,以下是关于其参数配置的详细解释:1. 处理器:通常搭载的是Intel的处理器,比如可能是酷睿2双核或者更高型号的处理器,具体的型号因不同时间推出的机型和用户配置的版本有所不

2024年7月22日 23:36

笔记本采购(笔记本采购合同范本)

笔记本采购(笔记本采购合同范本)

笔记本采购合同范本好的,下面是一个关于“笔记本采购合同范本”的条理明确的解释:一、合同基本概念笔记本采购合同是指供应商与购买方之间达成的书面协议,规定双方就笔记本产品的购买、价格、交付、质量保证及售后服务等事项的权利和义务。二、合同范本的基

2024年7月8日 13:06

thinkpadl440(ThinkPadL440是哪一年的什么参数?)

thinkpadl440(ThinkPadL440是哪一年的什么参数?)

ThinkPadL440是哪一年的什么参数?**ThinkPad L440是一款在2015年推出的笔记本电脑**。关于它的主要参数,以下是部分主要规格的简述:1. 处理器:一般配备了英特尔(Intel)的多代i系列处理器或更高性能的酷睿(C

2024年7月25日 23:21

三星笔记本官网(三星笔记本官网网站)

三星笔记本官网(三星笔记本官网网站)

三星笔记本官网网站“三星笔记本官网网站”是指由三星公司创建并维护的官方网站,专门用于展示和销售三星品牌的笔记本电脑产品。以下是关于“三星笔记本官网网站”的条理明确的解释:一、网站的主要功能1. 产品展示:网站提供详细的产品信息,包括各种型号

2024年7月12日 14:41

三星笔记本图片(三星笔记本图片大全)

三星笔记本图片(三星笔记本图片大全)

三星笔记本图片大全关于“三星笔记本图片大全”的相关内容,以下是一些基本的解释:1. 定义:这是一个关于三星品牌笔记本电脑的图片集合。在这里,“三星”指的是品牌名,而“笔记本”指的是电脑类型,即笔记本电脑。“图片大全”则意味着这是一个包含了大

2024年7月21日 08:21

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1731
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1156
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1153
标签列表

热门搜索