当先锋百科网

首页 1 2 3 4 5 6 7

豆瓣读书是一个很好的读书平台,为我们提供了大量优秀的读书资源,但是如果需要批量处理或者进行数据分析时,需要将这些信息整理到一个数据库中,这就需要用到爬虫技术和MySQL数据库。


# 导入需要用到的模块
import requests
from bs4 import BeautifulSoup
import pymysql
 
#建立与mysql的连接
conn=pymysql.connect(host='localhost', port=3306, user='root', password='mysql', database='book', charset='utf8')
cur=conn.cursor()
 
#爬取豆瓣读书的《三体》书评
url='https://book.douban.com/subject/2567698/comments/'
def get_book_comments(url):
    res=requests.get(url)
    soup=BeautifulSoup(res.text,'html.parser')
    comments=soup.select('.short')
    for comment in comments:
        comment=comment.text.strip().replace('\n','')
        insert_sql="INSERT INTO comments(comment) values('{}')".format(comment)
        cur.execute(insert_sql)
        conn.commit()
 
if __name__=="__main__":
    get_book_comments(url)
    cur.close()
    conn.close()

豆瓣读书爬取信息存在mysql

以上代码是一个爬取豆瓣读书《三体》书评并存储到MySQL中的实例。其中的get_book_comments函数使用BeautifulSoup解析HTML并选取所有评论,然后使用insert_sql将评论插入到comments表中。最后,我们要记得关闭游标和数据库连接。

这样,我们通过对豆瓣读书的网页进行解析,将所需的信息集成到了MySQL数据库中。这个例子虽然简单,但是能够说明这种技术的背后的逻辑。通过对其他书籍的爬取,我们也可以将数据实现自己所需的批量处理和数据分析。