4v1d 2021-09-12 16:51 采纳率: 75%
浏览 496

pycharm里出现如下报错 [Errno 11002] getaddrinfo failed

img

然后我的代码是这样的

import urllib.request, urllib.error
import re
from bs4 import BeautifulSoup
import xlwt


def main():
    baseurl = "https://movie.douban.com/top250?start="
    # 1.爬取网页
    datalist = getData(baseurl)
    savepath = ".\\豆瓣电影Top250.xls"#一个 . 表示保存在当前文件夹,加\\表示当前的位置
    #3.保存数据
    #saveData(savepath)

    #askURL("https://movie.douaban.com/top250?start=0")
#爬取网页
def getData(baseurl):
    datalist = []#列表
    for i in range(0,10):
        url = baseurl + str(i*25)
        html = askURL(url)        #保存获取到的网页源码
    #逐一解析数据
    return datalist

#得到指定一个指定url的网页内容
def askURL(url):
    head = {  # 模拟浏览器头部信息,向豆瓣服务器发送消息
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36"
    }
    # 用户代理,表示告诉豆瓣服务器,我们是什么类型的机器、浏览器(本质上是告诉浏览器,我们可以接收什么水平的文件内容)
    request = urllib.request.Request(url, headers=head)
    html = ""
    try:
        response = urllib.request.urlopen(request)
        html = response.read().decode("utf-8")
    except urllib.error.URLError as e:
        if hasattr(e,"code"):
            print(e.code)
        if hasattr(e,"reason"):
            print(e.reason)

    #return html






#保存数据
def saveData(savepath):
    print("save.....")







if __name__ == "__main__":
    main()# 当程序执行时

    # 函数调用
  • 写回答

2条回答 默认 最新

  • Feng-licong 2021-09-12 16:56
    关注

    askURL的return被你注释掉了

    评论

报告相同问题?

问题事件

  • 创建了问题 9月12日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀