0
点赞
收藏
分享

微信扫一扫

python 爬取 CSDN账号文章标题、链接 并存入mysql数据库


目录

​​0、需求简介​​

​​1、创建mysql数据库 py_crawler​​

​​2、创建存储链接的表​​

​​3、python链接mysql数据库​​

​​4、爬取文章 标题、链接 插入mysql数据库​​

​​5、获取到结果如下​​

0、需求简介


根据登录账号,获取文章列表,爬取所有博客的文章主题及链接,并将数据存储入mysql数据库


1、创建mysql数据库 py_crawler

python 爬取 CSDN账号文章标题、链接 并存入mysql数据库_python

2、创建存储链接的表

DROP TABLE IF EXISTS `wz_ad_links`;

CREATE TABLE `wz_ad_links` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`link` varchar(500) DEFAULT NULL,
`title` varchar(500) DEFAULT NULL,
`charge` varchar(500) DEFAULT 'NULL',
`zhuanlan` varchar(500) DEFAULT 'NULL',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=313 DEFAULT CHARSET=utf8;

3、python链接mysql数据库

#链接mysql的方法
def connect_mysql():
conn = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='py_crawler',
port=3306,
charset='utf8'
)
return conn

4、爬取文章 标题、链接 插入mysql数据库

#获取文章链接,保存入数据库
def get_wz_links():
conn=connect_mysql()
for i in range(1,9):
url="https://lexsaints.blog.csdn.net/article/list/"
url=url+str(i)
print(url)
response = requests.get(url,timeout=1)
print('type(request)', response)
print('request.status_code', response.status_code)
print('request.encoding', response.encoding)
print('request.cookies', response.cookies)
soup=BeautifulSoup(response.text,'lxml')
articles=soup.find_all('div',{'class':'article-item-box csdn-tracking-statistics'})
for article in articles:
cursor=conn.cursor()
sql = "INSERT INTO wz_ad_links(link,title) VALUES (%s,%s);"
link=article.find_all("a")[0].get("href").replace(" ","").replace("\n","")
title=article.find_all("a")[0].get_text().replace(" ","").replace("\n","")
cursor.execute(sql,[link,title])
conn.commit()
cursor.close()
conn.close()

5、获取到结果如下

python 爬取 CSDN账号文章标题、链接 并存入mysql数据库_爬取文章列表_02

python 爬取 CSDN账号文章标题、链接 并存入mysql数据库_数据库_03


举报

相关推荐

0 条评论