最近开始学习爬虫,还是比较习惯python的简洁,所以选择用python写爬虫。
python爬虫有很多框架,比如Scapry等,还有一些分布式框架,刚学还是一步一步来,以后再谈框架。
首先,python3+提供的requests库很强大,能够满足一般人的爬虫需求。今天就先写一个爬取腾讯课堂课名列表的小程序。
先上代码,后解析:
import requests from bs4 import BeautifulSoup as bs txurl='https://ke.qq.com/course/list?mt=1001' response=bs(requests.get(txurl).text,'html.parser') print("网页标题是:",response.h1.string) j=1 print("-----"*10,"下面是课程列表","-------"*10) for i in response.find_all('li',{'class':'course-card-item'}): print(j,"课程名称:",i.h4.text,"--->",i.text) j=j+1 print("-----"*10,"上面面是课程列表","-------"*10)
下面是运行结果:
下面是思路分析:
1,import requests
导入requests,首先它是一个http库,对爬来的处理都是很原始的那种,没有框架那么方便(最主要是减少代码量),但是对于刚学,还是多了解一些爬虫思路好一点,对以后自己写分布式框架有很大的帮助。
2,from bs4 import BeautifulSoup as bs
从bs4导入BeautifulSoup库,重命名为bs。这里重命名只是针对此处重命名,并非在python库里面对它重命名,只是为了后面方便使用。BeautifulSoup和bs,很直观的就认为bs更简洁。
“Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。
Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码。你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup就不能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。
Beautiful Soup已成为和lxml、html6lib一样出色的python解释器,为用户灵活地提供不同的解析策略或强劲的速度。”
3,txurl='https://ke.qq.com/course/list?mt=1001'
这个就不需要多解释了,无非就是我们抓取数据的网页URL。
4,还是介绍BeaautifulSoup的使用方法,即BeautifulSoup(markup, “html.parser”),此处对应的是bs(requests.get(txurl).text,'html.parser')
5,网页数据过滤输出,此处还在学习,先简单说一点,后面在一片里面整体的讲详细一点。
首先,要分析网页源码,如下图:
1,h1部分需要过滤出来,我已经圈起来了,具体语法h1.string。实际上为什么要用string呢?为什么不用text?(暂不做具体回答,希望有人能给出回答!)
2,课程列表打印,它们都在li标签下面,而且class名称都是一样的,代码如下:
response.find_all('li',{'class':'course-card-item'})
找到所有class名称为course-card-item的li标签,然后循环打印出想要的内容。
相关推荐
总的来说,这个"爬虫脚本项目源码-爬取腾讯课堂评论"涉及到的知识点包括Python爬虫基础、网络请求与网页解析、反爬虫策略、数据存储、异常处理以及代码组织与版本控制。通过学习和实践这个项目,开发者不仅能掌握...
Python作业:爬虫爬取京东评论;Python作业:爬虫爬取京东评论;Python作业:爬虫爬取京东评论;Python作业:爬虫爬取京东评论;Python作业:爬虫爬取京东评论;Python作业:爬虫爬取京东评论;Python作业:爬虫爬取...
Python网络爬虫是一种用于自动化获取网页内容的程序,它能够帮助我们从互联网上抓取大量信息,例如新闻、数据、文章等。在这个过程中,我们主要会用到...在实践中不断学习和探索,你将成为一名熟练的Python爬虫工程师。
Python多线程爬虫爬取电影天堂资源是一个实用且具有挑战的项目。以下是对该项目的详细说明: 1. 项目概述: 该项目旨在使用Python编写一个多线程爬虫程序,从电影天堂网站上爬取电影资源信息,包括电影名称、年份、类型...
1. **种子域名获取**:爬虫首先需要一个或多个起始的主域名作为种子,这些种子域名将被用来发现其下的二级域名。 2. **DNS解析**:爬虫会通过DNS(Domain Name System)查询服务来获取二级域名列表,这涉及到A记录...
第一次登录需要调用login函数扫码,存储在本地的cookies文件,需要转移到cookies文件夹中,该设置的目的后期优化多公众号爬取,突破每天能爬取次数的限制 3.selenium需要设置一个目录文件夹下对应chrome版本的...
python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧python爬虫,爬取贴吧...
python3 爬虫爬取静态网页和动态网页下载图片案例.rar python3 爬虫爬取静态网页和动态网页下载图片案例.rar python3 爬虫爬取静态网页和动态网页下载图片案例.rar python3 爬虫爬取静态网页和动态网页下载图片案例....
【描述】:“自学一个月python ,然后写了这个demo,爬虫爬取拉勾招聘信息,并且生成词云图” 这段描述表明,作者在短时间内学习了Python编程基础,并将其应用于爬虫开发。Python作为爬虫领域广泛使用的语言,以其...
在本篇文章中,作者王强介绍了如何使用Python语言开发爬虫程序,用以从智联招聘网站中爬取职位信息。文章分为基础版和进阶版两个部分。基础版详细介绍了构建URL、使用urllib库的urlencode函数、requests库的使用以及...
标题中的“python爬取第一PPT爬虫PPT”指的是使用Python编程语言编写网络爬虫程序,目标是抓取特定网站上的PPT资源。描述提到的“附带详细教程,合适新手学习python”表明这是一个适合初学者的教程,旨在教授如何...
在本项目中,我们将利用crawler4j来爬取“网易公开课”的数据,这是一个提供在线教育课程的平台,涵盖各种学科和主题,用户可以通过观看这些课程来学习新知识。 在爬取过程中,首先我们需要了解“过滤规则”...
本项目"Java实现网路爬虫爬取新闻信息"是利用Java编程语言来构建一个能够从指定网站抓取新闻内容的爬虫。在这个过程中,我们不仅需要掌握Java基础,还需要理解网络请求、HTML解析、正则表达式以及数据库操作等技术。...
爬虫爬取全国各大高校在各省历年分数线,保存成一个excel表格,方便查询,手机一个一个查太慢了
本报告旨在探讨如何使用Python编程语言构建一个网络爬虫,用于实时抓取中国四个一线城市——北京、上海、广州和深圳的天气数据。这一课题不仅有助于我们掌握Python爬虫的基本技术,同时也具有实际应用价值,比如为...
基于python实现网络爬虫爬取天气数据及可视化分析python大作业源码(高分项目)基于python实现网络爬虫爬取天气数据及可视化分析python大作业源码(高分项目)基于python实现网络爬虫爬取天气数据及可视化分析python...
基于网络爬虫爬取药源网药物数据python源码+项目说明(搭建药品数据库,含中成药和化学药品信息共计10万余条).zip基于网络爬虫爬取药源网药物数据python源码+项目说明(搭建药品数据库,含中成药和化学药品信息共计...