python爬取信息到数据库与mysql简单的表操作

python 爬取豆瓣top250并导入到mysql数据库中

import pymysql
import requests
import re
url='https://movie.douban.com/top250'
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0'}
proxies={
'http':'http://232.139.33.51:80'
}
list=[]
for word in range(0,250,25):
p={'start':word}
req=requests.get(url,headers=headers,proxies=proxies,params=p)
text=req.text
pattern=re.compile('<em class="">(.*?)</em>.*?<span class="title">(.*?)</span>.*?<p class="">.*?'
'导演: (.*?) .*?<br>.*?/&nbsp;(.*?)&nbsp;/&nbsp;(.*?)\n .*?<span class="inq">(.*?)</span>',re.S) #根据html页面写正则表达式来提取需要的信息
te=pattern.findall(text) for i in te:
print(i)
list.append(i) #print(list)
db=pymysql.connect(host='localhost',user='root',password='1234',charset='utf8') #passwd根据自己的数据库修改
cursor=db.cursor() #创建游标
cursor.execute('create database movie_data') #使用游标执行创建数据库
cursor.execute('use movie_data') #使用数据库
sql = '''create table movie(
id char(10) primary key,
name char(255),
director char(255),
country char(200),
type varchar(255),
brief varchar(255)
)default charset=utf8;
''' #创建表语句 cursor.execute(sql)
for i in list:
insert_sql = "insert into movie values('%s','%s','%s','%s','%s','%s');" % (i[0], i[1], i[2], i[3], i[4],i[5]) #将变量值转入到sql语句。
cursor.execute(insert_sql)
db.commit() #提交insert的数据信息 # #cursor.execute('drop database movie_data')

简单的mysql表操作

连接本地数据库

mysql -h localhost -u root -p

库操作

show databases;

create database 数据库名

drop database 数据库名

show create database 数据库

查看单个数据库信息

表操作

创建表

create table t1(

id int(4) not null,

name varchar(14) default 'allen'

);

约束条件

用于保证数据的完整性和一致性

PRIMARY KEY (PK)    标识该字段为该表的主键,可以唯一的标识记录
FOREIGN KEY (FK) 标识该字段为该表的外键
NOT NULL 标识该字段不能为空
UNIQUE KEY (UK) 标识该字段的值是唯一的
AUTO_INCREMENT 标识该字段的值自动增长(整数类型,而且为主键)
DEFAULT 为该字段设置默认值
UNSIGNED 无符号
ZEROFILL 使用0填充

查看表结构

desc 表名;

修改表名

alter table sc rename score;

插入数据

insert into student values

(1,'egon','male',18),

(2,'alex','female',81);

更新数据

UPDATE student set ssex='女'

where sname='张丽';

删除数据

DELETE FROM student

WHERE sno='2005030301';

详情mysql操作参考

这是一条超链接点击链接到mysql数据库总结笔记

上一篇:基于layUI调用后台数据实现区域信息级联查询


下一篇:aix knowlgdgecenter