.*?

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爬取中国考研网 考研学校名称和地区并进行数据清洗...相关推荐

  1. python爬取本地天气信息_用Python写一个爬取中国天气网的终端版天气预报爬虫

    导语 前几篇文章介绍了爬取静态网站的主要方法.今天写一个小项目实践一下.本项目可以在终端窗口查询全国3400多个区县的当日天气信息和近七天天气信息. 实现效果 [Python爬虫]写一个爬取中国天气网 ...

  2. python爬取中国天气网中国全部城市的天气链接

    近期自己尝试用python写一个qqbot实现天气查询功能,现已基本实现 已经基本完成爬取中国天气网的所有城市的天气情况链接 下附中国天气网所有城市的名称及对应链接 {'朝阳': 'http://ww ...

  3. Python-Selenium Webdriver+google chrome浏览器爬取中国知网的文献概述

    Python-Selenium Webdriver+google chrome浏览器爬取中国知网的文献概述 目录 Python-Selenium Webdriver+google chrome浏览器爬 ...

  4. Python爬取中国知网文献、参考文献、引证文献

    转载自博客园文章作为学习资料,代码及相关介绍非常详细.原文链接见Python爬取 中国知网文献.参考文献.引证文献

  5. R语言rvest包3步爬取中国天气网国内所有城市(县)7天实时天气预报数据

    接上一篇用R语言爬取中国天气网单个城市的7天实时天气预报数据,这篇文章综合一下,使用R语言rvest包3步爬取中国天气网国内所有城市(县)7天实时天气预报数据,这里的步数跨度可能有点长,但思路确实是3 ...

  6. python爬取中国天气网中城市及其对应编号

    文章目录 一.前言 二.思路 三.程序 四.注意事项 一.前言 为了实现爬取各地城市天气预报及其可视化的需要,爬取中国天气网中城市及其对应编号 . 天气预报可视化文章如下: <python爬虫, ...

  7. python爬取中国天气网天气图标

    python爬取中国天气网天气图标 准备工作 天气预报图例网址:http://www.weather.com.cn/static/html/legend.shtml 安装requests:pip in ...

  8. HttpUnit爬取中国知网特定大学网页

    继昨天使用Selenium+ChromeDriver爬取中国知网页面后,今天又想到了一些别的方法,就是HtmlUnit,作为一名萌新程序员,多写写总是好的,操蛋的是,还没想出好的爬取方法. 奉上jar ...

  9. Java使用Selenium+ChromeDriver 爬取中国知网

    Java使用Selenium 爬取中国知网 所需Jar包 中国知网的网页结构,我就不在这里赘述了,自己去看,这里我操作的是爬取博硕论文,只抓取前十页 当Selenium无法调取ChromeDriver ...

最新文章

  1. 临时“尿检官”谈违规为孙杨检测兴奋剂:一头雾水卷入该事件
  2. java中 resource_Java从Resource中读取文本文件
  3. Win10如何查看我们的电池健康
  4. 极简数据分析实操指南(下)
  5. Thinkphp3.23 关联模型relation方法不存在解决方法
  6. 【IT资讯】财联社:华为有望获Armv9架构CPU授权
  7. Mysql系列三:Centos6下安装Mysql和Mysql主从复制的搭建
  8. oracle12c安装卡住_12C rac安装卡住了
  9. 河北省高校计算机大赛,河北省教育厅关于举办2016年华北五省(市、自治区)及港澳台大学生计算机应用大赛河北赛区竞赛的通知...
  10. 计算机二级考试python_全国计算机等级考试考试大纲(2018年版)
  11. 【作业5】了解在什么岗位上有哪些语言需要使用
  12. HDU 1079 Calendar Game 博弈
  13. Ilist 和list的区别归纳总结
  14. python学习笔记(五):装饰器、生成器、内置函数、json
  15. 坐高铁只能用身份证了?
  16. 《CCNA学习指南:Cisco网络设备互连(ICND1)(第4版)》——2.6节TCP/IP协议栈
  17. SpringMVC和Structs2
  18. 计算机软件集成项目工程师上海,上海系统集成项目管理工程师积分政策,可以加多少分?...
  19. 实现三级导航demo
  20. 电商商家如何利用商品信息制定价格策略?

热门文章

  1. php登录半透明,WordPress透明OAuth 1.0使用PHP登录
  2. 仅用六个字符来完成Hello World,你能做到吗?
  3. ThreadLocal到底有没有内存泄漏?
  4. 每日一皮:当我在处理别人的代码时...
  5. 升级 | Fastjson 1.2.68 发布,支持 GEOJSON
  6. OpenJDK 14 性能保持提升,但 OpenJDK 8 仍是最强王者
  7. Spring Boot 项目设置网站图标
  8. Spring Boot:自定义starter
  9. dsp28335读地址c语言写法,dsp 28335 教程 附录4 dsp的c语言.ppt
  10. 单独的plsql链接数据库