有需要的可以加QQ:1016401546
代码百度云下载:
链接:https://pan.baidu.com/s/1wkpdY7MVyciwAVtzHnisVQ
提取码:1olb
说明: 上面代码目前被快手限制,没有该开始可以爬取那么多了评论了。
下面代码正常使用。
可以通过脚本+自动化滑动的方式来爬取评论。不过这种方式是模拟人工滑动视频评论,花费的时间肯定也很慢。一个一万多条评论的视频估计得要半个小时不止。但是这种方式的好处是抖音或者快手那边没有限制,比较是模仿人工操作的。代码直接爬取会被限制。
具体演示可以看下面代码demo:
按键精灵版本:
链接:https://pan.baidu.com/s/1hZjlfdPY6piUEwvK0KV2fA
提取码:xtk3
脚本有两个功能:
1、自定义爬取某个视频的评论,即你想爬取哪个视频,直接把分享的短链接拿出来保存到文件中即可爬取。
2、批量获取视频(自动获取一页有上百个视频),再爬取视频评论和用户id。
脚本运行:
脚本运行简单,提供一键运行操作,用户只需要双击启动文件即可启动脚本,弹出下面页面,用户只需要按照提示输入自己需求即可。
脚本使用说明
1、把你的短视频链接分行写入到文件中
如果你不想手动输入url,可以自动获取页面的视频:并爬取他的评论:
2、程序会自动获取文件中的短连接,获取视频评论信息:
部分代码如下
获取短连接的长链接,返回uid,用来获取信息
def get_uid(url):
print(url)
#分析URL是否短连接
if len(url) < 60:
r = requests.head(url, headers=headers_web1, verify=False)
long_url =r.headers.get('location')
print(long_url)
# 获取用户账户id
url_list = re.split('[/?]', long_url)
else:
url_list = re.split('[/?]',url)
return url_list[5]
f = open("请输入用户视频URL.txt", "r")
lines = f.readlines() # 读取全部内容 ,并以列表方式返回
# print(lines)
for line in lines:
url = line.replace('\n', '')
try:
uid = get_uid(url)
print(uid)
except:
time.sleep(2)
continue
3、写入到CSV里
def save_file(uname, uid, content):
UP['用户名字'] = uname
UP['用户uid'] = uid + '\t'
UP['评论内容'] = content
'''保存csv文件'''
csv_columns = list(UP.keys())
try:
if os.path.exists(csv_file):
with open(csv_file, 'a', encoding='utf-8-sig') as file:
writer = csv.DictWriter(file, fieldnames=csv_columns, delimiter=',', lineterminator='\n')
writer.writerow(UP)
else:
with open(csv_file, 'w', encoding='utf-8-sig') as csvfile:
print("创建csv文件")
writer = csv.DictWriter(csvfile, fieldnames=csv_columns, delimiter=',', lineterminator='\n')
writer.writeheader()
writer.writerow(UP)
except IOError as err:
print(err)