利用Python网络爬虫爬取学校官网十条标题
利用Python网络爬虫爬取学校官网十条标题
案例代码:
# __author : "J" # date : 2018-03-06 # 导入需要用到的库文件 import urllib.request import re import pymysql # 创建一个类用于获取学校官网的十条标题 class GetNewsTitle: # 构造函数 初始化 def __init__(self): self.request = urllib.request.Request("http://www.sict.edu.cn/") # 需要爬取的网址 # 利用正则表达式筛选数据 self.my_re = re.compile( r'学校要闻.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'"a2" >(.*?)</a>.*?' + r'院部简讯') # 创建一个方法 def get_html(self): try: response = urllib.request.urlopen(self.request) # 获取目标网页源码 my_html = response.read().decode('GB2312').replace("\r\n", "") return my_html except urllib.request.HTTPError as e: print(e.code) print(e.reason) return # 创建一个函数,利用正则获取指定标题 def get_titles(self, my_html): news_titles = re.findall(self.my_re, my_html) return news_titles # 创建一个方法,把获取到的标题存入mysql数据库 def into_mysql(self, titles): for num in range(10): connection = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='******', db='school', charset='utf8') cursor = connection.cursor() sql = "INSERT INTO `newsTitles` (`title`) VALUES ('" + titles[0][num] + "')" cursor.execute(sql) connection.commit() cursor.close() connection.close() # 执行函数的入口 def start(self): self.into_mysql(self.get_titles(self.get_html())) print("存储成功!") # 实例化类 s = GetNewsTitle() # 调用方法开始执行 s.start()
效果:
【版权声明】本博文著作权归作者所有,任何形式的转载都请联系作者获取授权并注明出处!
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】叫我+V : http://www.cnblogs.com/wjw1014
【CSDN地址】叫我+V : https://wjw1014.blog.csdn.net/
【Gitee地址】叫我+V :https://gitee.com/wjw1014
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】叫我+V : http://www.cnblogs.com/wjw1014
【CSDN地址】叫我+V : https://wjw1014.blog.csdn.net/
【Gitee地址】叫我+V :https://gitee.com/wjw1014
分类:
Python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!