python爬虫目录
摘录自B站对应课程笔记
不愧是清华大佬!把Python网络爬虫讲得如此简单明了!从入门到精通保姆级教程(建议收藏)
以下是本篇文章正文内容,下面案例可供参考
1、在官网:https://dev.mysql.com/downloads/windows/installer/5.7.html
2、如果提示没有.NET Framework框架。那么就在提示框中找到下载链接,下载一个就可以了。
3、如果提示没有Microsoft Virtual C++ x64(x86),那么百度或者谷歌这个软件安装即可。
navicat是一个操作mysql数据库非常方便的软件。使用他操作数据库,就跟使用excel操作数据是一样的。不过企业使用需要收费
MySQL Workbench MySQL Workbench
是一款专为MySQL设计的ER/数据库建模工具。它是著名的数据库设计工具DBDesigner4的继任者。你可以用MySQL Workbench设计和创建新的数据库图示,建立数据库文档,以及进行复杂的MySQL 迁移。MySQL Workbench是下一代的可视化数据库设计、管理的工具,它同时有开源和商业化的两个版本。该软件支持Windows和Linux系统
Python要想操作MySQL。必须要有一个中间件,或者叫做驱动程序。驱动程序有很多。比如有mysqldb、mysqlclient、pymysql等。在这里,我们选择用pymysql。安装方式也是非常简单,通过命令 pip install pymysql
即可安装。
pip install pymysql
数据库连接之前。首先先确认以下工作完成,这里我们以一个pymysql_test数据库.以下将介绍连接mysql的示例代码:
import pymysql
# 设置连接数据库参数
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
cursor.execute("select 1") # 设置查询对象
data = cursor.fetchone() # 获取查询数据
print(data)
cursor.close() # 关闭数据库连接
# 插入数据
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
insert into user(id, username, age, password) values (null, 'ddd', 21, "444444")
"""
cursor.execute(sql) # 执行sql语句
db.commit() # 提交数据
db.close() # 关闭数据库
如果在数据还不能保证的情况下,可以使用以下方式来插入数据:
sql = """
insert into user(
id,username,gender,age,password
)
values(null,%s,%s,%s,%s);
"""
cursor.execute(sql,('spider',1,20,'222222'))
使用pymysql查询数据。可以使用fetch*方法。查询不需要调用 commit 方法
fetchone()
:这个方法每次之获取一条数据。
fetchall()
:这个方法接收全部的返回结果。
fetchmany(size)
:可以获取指定条数的数据。
示例代码如下:
# fetchone
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
select * from user
"""
cursor.execute(sql)
result = cursor.fetchone() # 获取一条数据
print(result)
cursor.close()
db.close()
或者是直接使用fetchall,一次性可以把所有满足条件的数据都取出来:
# fetchall
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
select * from user where id < 4
"""
cursor.execute(sql)
result = cursor.fetchall() # 获取所有满足条件的数据
print(result) #
cursor.close()
db.close()
或者是使用fetchmany,指定获取多少条数据:
# fetchmany
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
select * from user where id < 4
"""
cursor.execute(sql)
result = cursor.fetchmany(2) # 获取所有满足条件的数据
print(result) #
cursor.close()
db.close()
# delete data
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
delete from user where id = 4
"""
cursor.execute(sql)
db.commit()
db.close()
# delete data
import pymysql
db = pymysql.connect(
host="127.0.0.1",
user="root",
password="root",
database="xhkdb",
port=3306
)
cursor = db.cursor()
sql = """
update user set username="AAA" where id = 1
"""
cursor.execute(sql)
db.commit()
db.close()
1、从服务器下载 mongodb 安装包,这里是的是 zip 的安装包,下载链接: mongodb-windows-x86_64-4.4.6.zip
2、下载之后在文件夹下创建data 文件夹,再进入到解压文件夹下的 bin 文件夹,目录结构如下
3、在bin文件夹下执行命令 mongod -dbpath “D:\mongodb\data” 启动 mongodb 服务,结果如下
4、再打开一个命令行窗口,在bin目录下执行 mongo 连接mongodb 服务。执行 show dbs; 可以看到已经存在的db.MongoDB会默认创建admin、config、local库。
5、新建 mongodb.conf,修改配置文件mongodb.conf的内容如下:
# 端口号,默认为27017
port=27017
# 数据库存放路径
dbpath=D:\mongodb\data
# 日志存放路径
logpath=D:\mongodb\mongodb.log
# 是否追加日志
logappend=true
# 是否启用日志,默认启用
journal=true
# 是否过滤无用日志信息
quiet=true
6.将MongoDB注册成Windows服务
①关闭之前的所有cmd窗口,开启新的管理员cmd,进入MongoDB的bin目录,输入
mongod -config "D:\mongodb\mongodb.conf" --install --serviceName "MongoDB"
②此时可以通过win + r, services.msc的服务列表中,生成了MongoDB的服务,可以设置为开机自启,之后不用每次都手动启动MongoDB
如果想启动和关闭 mongodb 服务, 可以用管理员身份执行如下命令:
启动: net start MongoDB
停止:net stop MongoDB
7、将MongoDB的bin目录配置到path环境变量下,之后就可以在任意处输入 mongo 登录
三元素:数据库、集合、文档
1、文档(document):就是关系数据库中的一行。文档是一个对象,由键值对构成,是 json 的扩展形式。
{ “_id” : ObjectId(“60bb738d1b680d63598f15a1”), “username” : “aaa” }
2、集合(collection):就是关系型数据库中的表。可以存储多个文档,结构可以不固定。可以存储如下数据在同一个集合中:
{ “username” : “aaa” }
{ “age” : 17 }
{ “username” : “aaa” , “age” : 17 }
db
: 查看当前的数据库
show dbs
: 查看所有的数据库
use 数据库名
:切换数据库。如果数据库不存在,创建数据库(创建后要插入数据才算创建成功)
db.集合名.insert(value)
: 添加数据到指定集合中
db.集合名.find()
: 从指定集合中查找数据。
#安装mongodb对应python库
pip3 install pymongo
import pymongo
# 获取连接 mongodb 对象,默认端口:27017
client = pymongo.MongoClient("127.0.0.1", port=27017)
# 获取数据库(如果没有test这个数据库也没关系)
db = client.test
# 获取数据库中的集合(也就是 mysql 中的表)
collection = db.qa
# 1、insert_one 加入一条文档数据到集合中
collection.insert_one({"username":"aaa"})
# 2、insert_many: 加入多条文档数据到集合中
collection.insert_many([{"username":"a2"},{"username":"a1"}])
# 3、find_one: 查找一条文档对象
res = collection.find_one()
print(res) # {'_id': ObjectId('60bb6e2151ee3420356af4f0'), 'username': 'aaa'}
# 4、find : 查找所有文档对象
cursor = collection.find()
print(res) #
for d in cursor:
print(d)
# 5、update_one: 更新一条文档对象
collection.update_one({"username":"a1"}, {"$set":{"username":"a1", "age":18}})
# 6、update_many: 更新多条文档对象
collection.update_many({"username":"a1"}, {"$set":{"username":"a1", "age":18}})
# 7、delete_one: 删除一条文档对象
collection.delete_one({"username":"a1", "age":18})
# 8、delete_many: 删除多条文档对象
collection.delete_many({"username":"aaa"})