django爬虫mysql

更新时间:02-10 教程 由 毒盅 分享

Django爬虫是基于Web框架Django的一种爬虫技术,可以用于爬取网站上的各种数据,如文本、图像、音频、视频等,并将其存入数据库中。本文将介绍如何使用Django爬虫将爬取到的数据存入MySQL数据库。

首先,需要安装Django以及MySQL驱动程序。在命令行中输入以下指令:

pip install djangopip install pymysql

接下来,需要创建一个Django项目。在命令行中输入以下指令:

django-admin startproject projectname

其中,projectname是项目的名称,可自定义。然后,在settings.py文件中配置MySQL数据库信息:

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'database_name','USER': 'user_name','PASSWORD': 'password','HOST': 'localhost','PORT': '3306',}}

其中,database_name是数据库的名称,user_name和password是访问数据库的用户名和密码,localhost是数据库的主机名,3306是数据库的端口号。

接下来,创建一个Django应用。在命令行中输入以下指令:

python manage.py startapp appname

其中,appname是应用的名称,可自定义。然后,在appname/下创建一个models.py文件,定义要存入数据库的数据模型:

from django.db import modelsclass Data(models.Model):title = models.CharField(max_length=200)content = models.TextField()def __str__(self):return self.title

上述代码定义了一个Data模型,包含标题和内容两个字段,类型分别为CharField和TextField。

接下来,在appname/下创建一个spider.py文件,编写爬虫程序:

import requestsfrom bs4 import BeautifulSoupfrom appname.models import Datadef spider():base_url = "https://www.example.com/"r = requests.get(base_url)soup = BeautifulSoup(r.content, "html.parser")data_list = []for item in soup.find_all("div", class_="item"):title = item.find("h2", class_="title").textcontent = item.find("p").textdata_list.append(Data(title=title, content=content))Data.objects.bulk_create(data_list)

上述代码从https://www.example.com/网站爬取数据,然后将数据存入数据库中。

最后,在项目的根目录下,运行以下命令:

python manage.py makemigrationspython manage.py migratepython manage.py shell

运行以上命令后,会进入Django的交互式命令行界面。在其中运行以下指令:

from appname.spider import spiderspider()

这样,爬虫程序就会运行并将数据存入MySQL数据库中。

声明:关于《django爬虫mysql》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2075037.html