哪个学校考研考python_python3爬取中国考研网 考研学校名称和地区并进行数据清洗...
.*?
3.数据存储
保存到MySQL数据库
def insert_info(value):
db = pymysql.connect("localhost", "root", "root", "exercise")
cursor = db.cursor()
sql = "INSERT INTO exer(name,origin) VALUES (%s,%s)"
try:
cursor.execute(sql, value)
db.commit()
print('插入数据成功')
except:
db.rollback()
print("插入数据失败")
db.close()
二、数据清洗
1.检查数据
有重复数据
2.数据清洗
使用pandas进行数据清洗
(1)导入相关包
import pymysql
import pandas as pd
(2)从数据库拿出数据(查询)
def all_info():
#连接数据库(mysql,账户名,密码,数据库)
db = pymysql.connect("localhost", "root", "root", "exercise")
#创建游标
cursor = db.cursor()
#sql语句
sql='select * from exer'
try:
#执行sql语句
cursor.execute(sql)
results=cursor.fetchall()
# print(results)
return results
except:
print('error')
(3)构造DataFrame
results=all_info()
name=[]
locate=[]
for i in results:
name.append(i[1])
locate.append(i[2])
data={'name':name,'locate':locate}
df=pd.DataFrame(data)
(4)使用drop_duplicates去掉重复行
df1=df.drop_duplicates('name',keep='first',inplace=False)
(5)重新存入数据库
for i in range(len(df1)):
# print(df1.iloc[i])
insert(list(df1.iloc[i]))
三、源码
数据采集
import requests
from bs4 import BeautifulSoup
import re
import pymysql
def insert_info(value):
db = pymysql.connect("localhost", "root", "root", "exercise")
cursor = db.cursor()
sql = "INSERT INTO exer(name,origin) VALUES (%s,%s)"
try:
cursor.execute(sql, value)
db.commit()
print('插入数据成功')
except:
db.rollback()
print("插入数据失败")
db.close()
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36"
}
#从首页拿到 各地研究网的url
def geturl():
url='http://www.chinakaoyan.com/'
res=requests.get(url,headers=headers)
soup=BeautifulSoup(res.text,'html.parser')
data=soup.find_all('div',attrs={'class':'soso_area_box'})
data=str(data)
data=str(data)
pattern=re.compile(r'(.*?)',re.S)
item=pattern.findall(data)
print(item)
return item
#拿到一个地区 每个学校的 学校名称
def getcityhtml(a_list):
url='http://www.chinakaoyan.com/'+a_list[0]
res=requests.get(url,headers=headers)
soup=BeautifulSoup(res.text,'html.parser')
data=soup.find_all('div',attrs={'class':'colu-info-body'})
data = str(data)
pattern = re.compile(r'
.*?
数据清洗
import pymysql
import pandas as pd
def all_info():
#连接数据库(mysql,账户名,密码,数据库)
db = pymysql.connect("localhost", "root", "root", "exercise")
#创建游标
cursor = db.cursor()
#sql语句
sql='select * from exer'
try:
#执行sql语句
cursor.execute(sql)
results=cursor.fetchall()
# print(results)
return results
except:
print('error')
def insert(value):
db = pymysql.connect("localhost", "root", "root", "exercise")
cursor = db.cursor()
sql = "INSERT INTO exer_info(name,origin) VALUES (%s,%s)"
try:
cursor.execute(sql, value)
db.commit()
print('插入数据成功')
except:
db.rollback()
print("插入数据失败")
db.close()
def school():
results=all_info()
name=[]
locate=[]
for i in results:
name.append(i[1])
locate.append(i[2])
data={'name':name,'locate':locate}
df=pd.DataFrame(data)
# print(df)
df1=df.drop_duplicates('name',keep='first',inplace=False) #按照name去除重复行
for i in range(len(df1)):
# print(df1.iloc[i])
insert(list(df1.iloc[i]))
school()
哪个学校考研考python_python3爬取中国考研网 考研学校名称和地区并进行数据清洗...相关推荐
- python爬取本地天气信息_用Python写一个爬取中国天气网的终端版天气预报爬虫
导语 前几篇文章介绍了爬取静态网站的主要方法.今天写一个小项目实践一下.本项目可以在终端窗口查询全国3400多个区县的当日天气信息和近七天天气信息. 实现效果 [Python爬虫]写一个爬取中国天气网 ...
- python爬取中国天气网中国全部城市的天气链接
近期自己尝试用python写一个qqbot实现天气查询功能,现已基本实现 已经基本完成爬取中国天气网的所有城市的天气情况链接 下附中国天气网所有城市的名称及对应链接 {'朝阳': 'http://ww ...
- Python-Selenium Webdriver+google chrome浏览器爬取中国知网的文献概述
Python-Selenium Webdriver+google chrome浏览器爬取中国知网的文献概述 目录 Python-Selenium Webdriver+google chrome浏览器爬 ...
- Python爬取中国知网文献、参考文献、引证文献
转载自博客园文章作为学习资料,代码及相关介绍非常详细.原文链接见Python爬取 中国知网文献.参考文献.引证文献
- R语言rvest包3步爬取中国天气网国内所有城市(县)7天实时天气预报数据
接上一篇用R语言爬取中国天气网单个城市的7天实时天气预报数据,这篇文章综合一下,使用R语言rvest包3步爬取中国天气网国内所有城市(县)7天实时天气预报数据,这里的步数跨度可能有点长,但思路确实是3 ...
- python爬取中国天气网中城市及其对应编号
文章目录 一.前言 二.思路 三.程序 四.注意事项 一.前言 为了实现爬取各地城市天气预报及其可视化的需要,爬取中国天气网中城市及其对应编号 . 天气预报可视化文章如下: <python爬虫, ...
- python爬取中国天气网天气图标
python爬取中国天气网天气图标 准备工作 天气预报图例网址:http://www.weather.com.cn/static/html/legend.shtml 安装requests:pip in ...
- HttpUnit爬取中国知网特定大学网页
继昨天使用Selenium+ChromeDriver爬取中国知网页面后,今天又想到了一些别的方法,就是HtmlUnit,作为一名萌新程序员,多写写总是好的,操蛋的是,还没想出好的爬取方法. 奉上jar ...
- Java使用Selenium+ChromeDriver 爬取中国知网
Java使用Selenium 爬取中国知网 所需Jar包 中国知网的网页结构,我就不在这里赘述了,自己去看,这里我操作的是爬取博硕论文,只抓取前十页 当Selenium无法调取ChromeDriver ...
最新文章
- 临时“尿检官”谈违规为孙杨检测兴奋剂:一头雾水卷入该事件
- java中 resource_Java从Resource中读取文本文件
- Win10如何查看我们的电池健康
- 极简数据分析实操指南(下)
- Thinkphp3.23 关联模型relation方法不存在解决方法
- 【IT资讯】财联社:华为有望获Armv9架构CPU授权
- Mysql系列三:Centos6下安装Mysql和Mysql主从复制的搭建
- oracle12c安装卡住_12C rac安装卡住了
- 河北省高校计算机大赛,河北省教育厅关于举办2016年华北五省(市、自治区)及港澳台大学生计算机应用大赛河北赛区竞赛的通知...
- 计算机二级考试python_全国计算机等级考试考试大纲(2018年版)
- 【作业5】了解在什么岗位上有哪些语言需要使用
- HDU 1079 Calendar Game 博弈
- Ilist 和list的区别归纳总结
- python学习笔记(五):装饰器、生成器、内置函数、json
- 坐高铁只能用身份证了?
- 《CCNA学习指南:Cisco网络设备互连(ICND1)(第4版)》——2.6节TCP/IP协议栈
- SpringMVC和Structs2
- 计算机软件集成项目工程师上海,上海系统集成项目管理工程师积分政策,可以加多少分?...
- 实现三级导航demo
- 电商商家如何利用商品信息制定价格策略?
热门文章
- php登录半透明,WordPress透明OAuth 1.0使用PHP登录
- 仅用六个字符来完成Hello World,你能做到吗?
- ThreadLocal到底有没有内存泄漏?
- 每日一皮:当我在处理别人的代码时...
- 升级 | Fastjson 1.2.68 发布,支持 GEOJSON
- OpenJDK 14 性能保持提升,但 OpenJDK 8 仍是最强王者
- Spring Boot 项目设置网站图标
- Spring Boot:自定义starter
- dsp28335读地址c语言写法,dsp 28335 教程 附录4 dsp的c语言.ppt
- 单独的plsql链接数据库