练习requests模块时,想查看爬取的响应信息,但是显示【进程已结束,退出代码0】,请问是什么原因导致的呢?怎么解决?
import requests
import re
import pandas as pd
# 固定定义抓取函数--df.content
def get_content(url):
# 定义要爬取的网页
url = 'https://movie.douban.com/top250'
# 过滤无效信息
header ={}
header['user-agent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
# 使用get方法获取网页响应信息
df=requests.get(url,headers=header)
# 展示响应信息全部内容
# return df.content
print(df.content)
【进程已结束,退出代码0】
运行结果及报错内容
1.初步怀疑是print()缩进导致,调整print()不缩进,也是不行
2.怀疑是return()和print()冲突了,把return()注释掉,不行
3.怀疑是print()的结果格式有问题,后面print(df.content.text),还是不行
想要了解为什么会出现不显示要打印的结果,而是显示成功【退出代码0】
1、如果上面是你的完整代码,那么你应该要想想,你的函数是不是只定义了而没有调用呢?
2、既然函数中 url 要定义为固定内容的,为什么不将其作为默认参数呢?
解决办法:将 url 改为默认参数,并调用函数
改成这样
import requests
import re
import pandas as pd
# 固定定义抓取函数--df.content
def get_content(url):
# 定义要爬取的网页
# 过滤无效信息
header = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
}
# 使用get方法获取网页响应信息
df = requests.get(url, headers=header)
# 展示响应信息全部内容
# return df.content
print(df.content)
url = 'https://movie.douban.com/top250'
get_content(url)