Python之sqlite3数据库

Python之sqlite3数据库

一.splite3的构建

关于splite3的知识,可以参考:链接

import sqlite3
import os
path=os.getcwd()

conn=sqlite3.connect(path+'\\db.db')
cur=conn.cursor()

二.存储数据的爬取

我们以快代理的ip地址作为存储对象

import pandas as pd

url="https://www.kuaidaili.com/free/inha/1/"

df=pd.read_html(url,encoding="utf-8")[0] # [0]:表示第一个table,多个table需要指定,如果不指定默认第一个
df
IPPORT匿名度类型位置响应速度最后验证时间
0122.4.40.69999高匿名HTTP山东省济南市 电信1秒2020-04-29 19:31:01
1118.212.107.1809999高匿名HTTP江西省新余市 联通0.9秒2020-04-29 18:31:01
2125.108.84.2409000高匿名HTTP浙江省温州市 电信2秒2020-04-29 17:31:01
3220.191.43.959000高匿名HTTP浙江省杭州市 电信2秒2020-04-29 16:31:01
4171.35.223.249999高匿名HTTP江西省新余市 联通1秒2020-04-29 15:31:01
51.199.31.2119999高匿名HTTP河南省济源市 电信2秒2020-04-29 14:31:01
6180.118.128.2469000高匿名HTTP中国 江苏省 镇江市 电信1秒2020-04-29 13:31:02
7123.101.214.2449999高匿名HTTP河南省鹤壁市 电信3秒2020-04-29 12:31:01
8218.14.108.538060高匿名HTTP广东省惠州市 电信3秒2020-04-29 11:31:01
936.249.49.389999高匿名HTTP福建省泉州市 联通0.3秒2020-04-29 10:31:01
10101.132.123.998080高匿名HTTP上海市上海市 阿里云2秒2020-04-29 09:31:01
11171.11.179.1159999高匿名HTTP河南省济源市 电信1秒2020-04-29 08:31:01
12112.111.77.2029999高匿名HTTP福建省南平市 联通1秒2020-04-29 07:31:01
131.198.73.1179999高匿名HTTP河南省济源市 电信0.7秒2020-04-29 06:31:01
14175.42.68.1579999高匿名HTTP福建省宁德市 联通3秒2020-04-29 05:31:01

三.数据表的创建

cur.execute('create table if not exists ip_proxy(id INTEGER primary key,ip TEXT,port INTEGER,anonymity TEXT,types TEXT,locations TEXT,respondingspeed TEXT,time TEXT)')
<sqlite3.Cursor at 0x23b8b513e30>
conn.commit()

存储数据

for i in list(df.index):
    
    tmp=df.iloc[i].to_list()
    tmp[1]=int(tmp[1])
    
    data=[i+1]+tmp
    
    cur.execute('insert into ip_proxy values (?,?,?,?,?,?,?,?)',tuple(data))
    
    conn.commit()

在这里插入图片描述

四.数据展示

for row in cur.execute('select * from ip_proxy'):
    print(row)
(1, '122.4.40.6', 9999, '高匿名', 'HTTP', '山东省济南市 电信', '1秒', '2020-04-29 19:31:01')
(2, '118.212.107.180', 9999, '高匿名', 'HTTP', '江西省新余市 联通', '0.9秒', '2020-04-29 18:31:01')
(3, '125.108.84.240', 9000, '高匿名', 'HTTP', '浙江省温州市 电信', '2秒', '2020-04-29 17:31:01')
(4, '220.191.43.95', 9000, '高匿名', 'HTTP', '浙江省杭州市 电信', '2秒', '2020-04-29 16:31:01')
(5, '171.35.223.24', 9999, '高匿名', 'HTTP', '江西省新余市 联通', '1秒', '2020-04-29 15:31:01')
(6, '1.199.31.211', 9999, '高匿名', 'HTTP', '河南省济源市 电信', '2秒', '2020-04-29 14:31:01')
(7, '180.118.128.246', 9000, '高匿名', 'HTTP', '中国 江苏省 镇江市 电信', '1秒', '2020-04-29 13:31:02')
(8, '123.101.214.244', 9999, '高匿名', 'HTTP', '河南省鹤壁市 电信', '3秒', '2020-04-29 12:31:01')
(9, '218.14.108.53', 8060, '高匿名', 'HTTP', '广东省惠州市 电信', '3秒', '2020-04-29 11:31:01')
(10, '36.249.49.38', 9999, '高匿名', 'HTTP', '福建省泉州市 联通', '0.3秒', '2020-04-29 10:31:01')
(11, '101.132.123.99', 8080, '高匿名', 'HTTP', '上海市上海市 阿里云', '2秒', '2020-04-29 09:31:01')
(12, '171.11.179.115', 9999, '高匿名', 'HTTP', '河南省济源市 电信', '1秒', '2020-04-29 08:31:01')
(13, '112.111.77.202', 9999, '高匿名', 'HTTP', '福建省南平市 联通', '1秒', '2020-04-29 07:31:01')
(14, '1.198.73.117', 9999, '高匿名', 'HTTP', '河南省济源市 电信', '0.7秒', '2020-04-29 06:31:01')
(15, '175.42.68.157', 9999, '高匿名', 'HTTP', '福建省宁德市 联通', '3秒', '2020-04-29 05:31:01')
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值