很抱歉,您没有提供需要改写的句子。请提供您希望改写的句子,我将为您改写为一个长尾词的。
- 内容介绍
- 文章标签
- 相关推荐
本文共计740个文字,预计阅读时间需要3分钟。
家人们,我是小黑。一、前言,前几天在Python最强王者交流群【德善堂小儿童推-糕美老教师】分享了关于Python网络爬虫的问题,这里拿出来给家人们分享一下,一起学习。二、解决过程
大家好,我是皮皮。
一、前言
前几天在Python最强王者交流群分享了一个关于Python网络爬虫的问题,这里拿出来给大家分享下,一起学习。
二、解决过程
这里大佬提出了思路,的确可行。
给了一份代码,取巧,这里就不展示了。后来给了一份可行的代码,如下所示:
for url in all_url:resp = requests.get(url, headers=header, stream=True)
content_length = resp.headers.get('content-length')
if content_length and int(content_length) > 10240:
print(url)
程序运行之后,不到1秒就出来结果了,没想到jupyter里边可以自动显示时间,以前也有看到,但是没有留意,Pycharm里边是没有的,这里来看,jupyter还是蛮香,Pycharm还得自己设置打印时间。
的方法完全满足题目要求,不过这个文件解析有点慢。
后来大佬摊牌了:题目就考这一个知识点:stream=True,别的都是简单的很。这里给出了代码:
import requestsimport time
url = ['wap.game.xiaomi.com/index.php?c=app&v=download&package=com.joypac.dragonhero.cn.mi&channel=meng_4001_2_android',
'wap.game.xiaomi.com/index.php?c=app&v=download&package=com.yiwan.longtengtianxia.mi&channel=meng_4001_2_android',
'wap.game.xiaomi.com/index.php?c=app&v=download&package=com.netease.mrzh.mi&channel=meng_4001_2_android']
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
start = time.time()
# 方法一:判断response.headers里面的内容
for i in url:
resp = requests.get(i, headers=header, stream=True)
if 'Content-Length' in resp.headers:
print(f'有效url有:\n {i}')
end = time.time()
print(f'测试完毕!共耗时: {end - start:.2f}秒')
# 方法二:判断响应的字节流大小
start2 = time.time()
for i in url:
resp = requests.get(i, headers=header, stream=True)
chunk_size = 1024
for data in resp.iter_content(chunk_size=chunk_size):
if len(data) > 800:
print(f'有效url有:\n {i}')
break
end2 = time.time()
print(f'测试完毕!共耗时: {end2 - start2:.2f}秒')
下面是代码截图:
那小伙伴们就问了,那个stream参数是干啥用的啊?不慌,丢来一个解析。
如此就清晰多了。
三、总结
大家好,我是皮皮。这篇文章主要分享了在Python网络爬虫过程中,构建网络请求的时候,参数stream=True的使用,使用了一个具体的实例给大家演示了该参数的具体用法!关于该参数的介绍,请参考文中的解析。
最后感谢分享,感谢、、大佬给出的思路和代码支持,感谢粉丝、等人参与学习交流。
本文共计740个文字,预计阅读时间需要3分钟。
家人们,我是小黑。一、前言,前几天在Python最强王者交流群【德善堂小儿童推-糕美老教师】分享了关于Python网络爬虫的问题,这里拿出来给家人们分享一下,一起学习。二、解决过程
大家好,我是皮皮。
一、前言
前几天在Python最强王者交流群分享了一个关于Python网络爬虫的问题,这里拿出来给大家分享下,一起学习。
二、解决过程
这里大佬提出了思路,的确可行。
给了一份代码,取巧,这里就不展示了。后来给了一份可行的代码,如下所示:
for url in all_url:resp = requests.get(url, headers=header, stream=True)
content_length = resp.headers.get('content-length')
if content_length and int(content_length) > 10240:
print(url)
程序运行之后,不到1秒就出来结果了,没想到jupyter里边可以自动显示时间,以前也有看到,但是没有留意,Pycharm里边是没有的,这里来看,jupyter还是蛮香,Pycharm还得自己设置打印时间。
的方法完全满足题目要求,不过这个文件解析有点慢。
后来大佬摊牌了:题目就考这一个知识点:stream=True,别的都是简单的很。这里给出了代码:
import requestsimport time
url = ['wap.game.xiaomi.com/index.php?c=app&v=download&package=com.joypac.dragonhero.cn.mi&channel=meng_4001_2_android',
'wap.game.xiaomi.com/index.php?c=app&v=download&package=com.yiwan.longtengtianxia.mi&channel=meng_4001_2_android',
'wap.game.xiaomi.com/index.php?c=app&v=download&package=com.netease.mrzh.mi&channel=meng_4001_2_android']
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
start = time.time()
# 方法一:判断response.headers里面的内容
for i in url:
resp = requests.get(i, headers=header, stream=True)
if 'Content-Length' in resp.headers:
print(f'有效url有:\n {i}')
end = time.time()
print(f'测试完毕!共耗时: {end - start:.2f}秒')
# 方法二:判断响应的字节流大小
start2 = time.time()
for i in url:
resp = requests.get(i, headers=header, stream=True)
chunk_size = 1024
for data in resp.iter_content(chunk_size=chunk_size):
if len(data) > 800:
print(f'有效url有:\n {i}')
break
end2 = time.time()
print(f'测试完毕!共耗时: {end2 - start2:.2f}秒')
下面是代码截图:
那小伙伴们就问了,那个stream参数是干啥用的啊?不慌,丢来一个解析。
如此就清晰多了。
三、总结
大家好,我是皮皮。这篇文章主要分享了在Python网络爬虫过程中,构建网络请求的时候,参数stream=True的使用,使用了一个具体的实例给大家演示了该参数的具体用法!关于该参数的介绍,请参考文中的解析。
最后感谢分享,感谢、、大佬给出的思路和代码支持,感谢粉丝、等人参与学习交流。

