简单的Python入门爬虫案例,爬取100首诗,视频介绍:http://www.zhishiml.com/pythondetails.html

# coding=utf-8
# www.zhishiml.com
#导入用到的包
import  urllib.request,urllib.error #发起请求
from bs4 import BeautifulSoup #粗略分析网页数据
import  re  #正则,精准提前目标信息
import  xlwt #保存结果到excel
import  time #定时功能def main():print("开始爬取")datalist=getData()saveData(datalist)print("爬取完成")
def getData():url = "https://so.gushiwen.cn/gushi/tangshi.aspx"headers = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36"}req = urllib.request.Request(url=url,headers=headers)try:#发起请求resp= urllib.request.urlopen(req)#获取数据html=resp.read().decode("utf-8")bs=BeautifulSoup(html,"html.parser")aitems= bs.find_all("span")datalist=[]for item in aitems:data = []item=str(item)# print(item)reSpan = re.compile(r'[\u4E00-\u9FA5]+')  # 正则 匹配一个或者多个汉字span=re.findall(reSpan,item)# print(span)title=span[0]data.append(title)#题目author=span[1]data.append(author)#作者reLink = re.compile(r'<a href="(.*?)"')  # 正则 拿到a的链接href属性值link=re.findall(reLink,item)## print(link[0])data.append(link[0])#站内链接# 再次发起请求url2="https://so.gushiwen.org"+link[0]data.append(url2)  # 完整链接req2 = urllib.request.Request(url=url2, headers=headers)resp2 = urllib.request.urlopen(req2)# 获取数据html2 = resp2.read().decode("utf-8")# print(html2)bs2 = BeautifulSoup(html2, "html.parser")aitems2 = bs2.find_all("div",class_="contson")[0]  # BeautifulSoupaitems2=str(aitems2)print(aitems2)#正则解析reDiv = re.compile(r'[\u4E00-\u9FA5]+')  # 正则 匹配一个或者多个汉字divContent = re.findall(reDiv, aitems2)# print(divContent)data.append(divContent)print("-------------------")print(data)datalist.append(data)# print(datalist)time.sleep(1)#间隔1秒,爬取一次# break;#循环执行一次就结束print('第'+str(len(datalist))+'首')if  len(datalist)>=100:#爬取一百条数据return datalist  # 返回结果集except  urllib.error.URLError as e:print(e.reason)#异常信息
def saveData(datalist):wbook = xlwt.Workbook("encoding=utf-8")wsheet = wbook.add_sheet("唐诗三百首3")colName =('题目','作者','站内链接','完整链接','内容')for i in  range(0,5):wsheet.write(0, i, colName[i]);  # 行,列,内容row=1for item in datalist:for i in range(0, 5):wsheet.write(row, i, str(item[i]))  # 行,列,内容row=row+1wbook.save("(唐诗三百首).xls")  # 保存
if __name__ == '__main__':main()

pyhton爬虫爬取100首诗相关推荐

  1. python爬虫微博图片,pyhton爬虫爬取微博某个用户所有微博配图

    前几天写了个java爬虫爬花瓣网,但是事后总感觉不够舒服,终于在今天下午写了个python爬虫(爬微博图片滴),写完之后就感觉舒服了,果然爬虫就应该用python来写,哈哈(这里开个玩笑,非引战言论) ...

  2. 利用PYHTON爬虫爬取恋家网房价

    import openpyxl         # 导入处理excel文件用到的库 import requests         # 导入requests 请求库 from lxml import ...

  3. pyhton爬虫 爬取电商平台商品历史价格、最低价格(慢慢买网)

    主要使用的库: requests:爬虫请求并获取源码 re:使用正则表达式提取数据 json:使用JSON提取数据 pandas:使用pandans存储数据 #!coding=utf-8 import ...

  4. python网易云_用python爬虫爬取网易云音乐

    标签: 使用python爬虫爬取网易云音乐 需要使用的模块 只需要requests模块和os模块即可 开始工作 先去网易云音乐网页版找一下你想要听的歌曲点击进去.按键盘F12打开网页调试工具,点击Ne ...

  5. Python爬虫|爬取喜马拉雅音频

    "GOOD Python爬虫|爬取喜马拉雅音频 喜马拉雅是知名的专业的音频分享平台,用户规模突破4.8亿,汇集了有声小说,有声读物,儿童睡前故事,相声小品等数亿条音频,成为国内发展最快.规模 ...

  6. python爬虫----爬取网易云音乐

    使用python爬虫爬取网易云音乐 目录 使用python爬虫爬取网易云音乐 需要使用的模块 开始工作 运行结果 需要使用的模块 只需要requests模块和os模块即可 开始工作 先去网易云音乐网页 ...

  7. python爬虫代码实例-Python爬虫爬取百度搜索内容代码实例

    这篇文章主要介绍了Python爬虫爬取百度搜索内容代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 搜索引擎用的很频繁,现在利用Python爬 ...

  8. 对爬虫爬取到的数据进行存储

    已写章节 第一章 网络爬虫入门 第二章 基本库的使用 第三章 解析库的使用 第四章 数据存储 第五章 动态网页的抓取 文章目录 已写章节 第四章 数据存储 4.1 文件存储 4.1.1 TXT文件存储 ...

  9. mysql scrapy 重复数据_大数据python(scrapy)爬虫爬取招聘网站数据并存入mysql后分析...

    基于Scrapy的爬虫爬取腾讯招聘网站岗位数据视频(见本头条号视频) 根据TIOBE语言排行榜更新的最新程序语言使用排行榜显示,python位居第三,同比增加2.39%,为什么会越来越火,越来越受欢迎 ...

  10. python爬虫开发数据库设计入门经典_Python3实现的爬虫爬取数据并存入mysql数据库操作示例...

    本文实例讲述了Python3实现的爬虫爬取数据并存入mysql数据库操作.分享给大家供大家参考,具体如下: 爬一个电脑客户端的订单.罗总推荐,抓包工具用的是HttpAnalyzerStdV7,与chr ...

最新文章

  1. 2019世界机器人大赛圆满落幕,荆州中学等15支队伍获「全能奖」
  2. python交互界面的退出
  3. 转帖:从C51的指针到病毒-c51软复位,经典,分析透彻
  4. 相似图片检测:感知哈希算法之aHash,dHash,pHash的Python实现
  5. js前台编码,asp.net后台解码 防止前台传值到后台为乱码
  6. linux 查当前pid_杀死僵尸进程,你需要这些神奇高效的Linux命令行
  7. mysql中有sa_SA工作-mysql设计规范
  8. jackson实现java对象转支付宝/微信模板消息
  9. LDA通俗理解LDA主题模型
  10. python实现不重复排列组合_Python使用combinations实现排列组合的方法
  11. Contki 相关链接备忘
  12. python编程从入门到实践pdf_【送书PDF】Python编程从入门到实践
  13. readonly 关键字与 const 关键字不同
  14. 使用hightopo完成基本图元旋转和闪烁
  15. 关于嵌入式EMW3162 Wifi模块的网络配置与测试
  16. 第一遍Java学习笔记
  17. 【收藏】eos是什么币?如何购买和储存eos币 —— 教科书式操作
  18. 微信和支付宝付款码条码规则
  19. 三维空间中绘制点、线、面、UV贴图,万能的BufferGeometry(three.js实战4)
  20. 竞价广告推广走过一些的路子,如何提升微信加粉转化效果

热门文章

  1. Safari 神器,手机平板都能用,我们找到了 14 个超实用浏览器插件
  2. MongoDB—Mac M1的安装
  3. 阿里巴巴国际站 | 如何做数据分析?
  4. python外贸应用_Python脚本+Sublime免费查询阿里巴巴国际站产品排名
  5. Hadoop HA架构图
  6. 2021西安ec final游记
  7. 记录Android dnk 文档
  8. Conda更新或安装包时出现Verifying transaction: failed+SetupToolsRemoveError
  9. mysql 指数 类型_利用MYSQL挑选指数基金
  10. Chrome繁简体转换插件