注册
登录
查看:436 | 回复:7
星星还是树
大佬们有写过爬取豆瓣Top250电影吗
发表于 2021/9/21 20:02:59
楼主

QQ图片20210921220317.png

星星还是树
发表于 2021/9/21 20:07:21
沙发
# coding=utf-8
from bs4 import BeautifulSoup
import re
import xlwt  # 进行excel操作
import sqlite3
import urllib.request, urllib.error
def main():
    baseurl =  
https://movie.douban.com/top250 
    # 1.爬取网页
    datalist = getData(baseurl)
    savepath = r .\豆瓣电影Top250.xls   # xls是execl文件类型    路径最前面的“。”表示储存在当前项目下
    # saveData(savepath)
findLink = re.compile(r  a href= (.*?)   )  # 创建正则表达式对象,表示规则(字符串的模式)
def getData(baseurl):
    datalist = []
    for i in range(0, 10):  # 左闭右开
        url = baseurl + str(i * 25)
        html = askURL(url)  # 保存获取到的网页源码
        # 2.逐一解析数据
        soup = BeautifulSoup(html,  html.parser )
        # 查找链接
        for item in soup.find_all( div , class_= item ):  # 查找符合要求的字符串,形成列表
            data = []  # 列表保存一部电影的所有信息
            item = str(item)  # 转化成字符串即可用正则表达式搜寻信息
            link = re.findall(findLink, item)[0]
            print(link)
    return datalist
def askURL(url):
    head = {
         User-Agent :  Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36 SE 2.X MetaSr 1.0 
    }
    # 建立请求信息
    request = urllib.request.Request(url, headers=head)
    html =   
    try:
        response = urllib.request.urlopen(request)
        html = response.read().decode( utf-8 )
        print(html)
    except urllib.error.URLError as e:
        if hasattr(e,  code ):
            print(e.code)  # c错权误代码
        if hasattr(e,  reason ):
            pass
            print(e.reason)  # 错误原因
    return html
# 保存数据
def saveData(savepath):
    pass
if __name__ ==  __main__ :
    # 调用函数
    main()


不朽之城
发表于 2021/9/21 20:11:28
板凳

我爬过电影天堂

星星还是树
发表于 2021/9/21 20:12:18
4楼

还是不知道错在哪里

不朽之城
发表于 2021/9/21 20:13:45
5楼

百度

遗憾从此无人似你
发表于 2021/9/21 20:15:22
6楼

@星星还是树

我爬过一次,到建立SQ就没再继续了,excel倒是弄了

仰望星空
发表于 2021/9/21 20:20:04
7楼

这个东西烂大街,还用爬?

星星还是树
发表于 2021/9/21 20:22:09
8楼

第一次按教程操作,第一次学

立即注册站大爷用户,免费试用全部产品
立即注册站大爷用户,免费试用全部产品