好友
阅读权限10
听众
最后登录1970-1-1
|
狻猊帝
发表于 2020-6-12 00:48
本帖最后由 狻猊帝 于 2020-6-12 13:04 编辑
[md]### 小白写了一个抓取微博写真照的爬虫
```python
#抓取微博写真照
import requests
import re
import os
import time
cookie = {} # 这里cookie填写自己的 可以抓取多页 不填能抓取一页的
header = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4144.2 Safari/537.36'
}
get_order = input('是否启动程序? yes or no: ')
number = 1
while True:
if get_order != 'no':
print('抓取中......') # 下面的链接填写微博搜索的链接
url = f'https://s.weibo.com/weibo?q=%23%E5%B0%91%E5%A5%B3%E5%86%99%E7%9C%9F%23&wvr=6&b=1&Refer=SWeibo_box&page={number}'
response = requests.get(url, cookies=cookie)
result = response.text
print(result)
detail = re.findall('data="uid=(.*?)&mid=(.*?)&pic_ids=(.*?)">', result)
for part in detail:
head = part[0]
feet = part[2]
feet = feet.split(',')
for foot in feet:
url_x = f'https://wx1.sinaimg.cn/large/{foot}.jpg' # 这里就是大图链接了
response_photo = requests.get(url_x, headers=header)
file_name = url_x[-10:]
if not os.path.exists('portrait/'+head):
os.mkdir('portrait/'+head)
with open('portrait/'+head + '/' + file_name, 'ab') as f: # 保存文件
f.write(response_photo.content)
time.sleep(0.5)
print('获取完毕')
get_order = input('是否继续获取下一页? Y:yes N:no: ')
if get_order != 'no':
number += 1
else:
print('程序结束')
break
else:
print('程序结束')
break
```
### 图片画质很高 第一次发帖 有问题还请大佬们不吝赐教 |
免费评分
-
查看全部评分
本帖被以下淘专辑推荐:
- · 编程语言类|主题: 110, 订阅: 42
- · 源码|主题: 47, 订阅: 1
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|