Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(已解决附方法)高频率抓取失败,获取用户数据失败,请从web端获取新ttwid[BUG] #329

Closed
boluohong opened this issue Feb 23, 2023 · 21 comments
Assignees
Labels
故障(bug) 代码问题导致的错误(Bugs caused by code problems) 额外求助(help wanted) 非项目代码错误的求助(Extra attention is needed) 无效(invalid) 非代码故障导致错误或异常(Non-code faults causing errors or anomalies)

Comments

@boluohong
Copy link

boluohong commented Feb 23, 2023

【原问题】
已测试多个账户,并多次测试(约200次)
大部分情况下抓取失败,偶尔可以抓取成功(约2%)

失败时提示如下:
[ 提示 ]:获取用户数据失败,请从web端获取新ttwid

【解决方法】
@sunyulu-hub提供
需要浏览器访问下这个用户的主页,从cookie 中获取ttwid,替换到代码Util 包下的__init__.py的header里面的ttwid(64行)就可以了

【另附提供给刚门的朋友的建议】

怎么获取我只会用不会改。。。。

1.获得ttwid
(1)在电脑浏览器中打开任意抖音主页
(2)按F12---->点击network选项卡--->点击doc选项
(3)再在左下角name选项卡中任选一项---->Headerr--->RequestHeaders--->cookie
(4)在cookie中找到ttwid选项
如果仍然不会,请谷歌“如何查看网页cookies”

2.将获得的ttwid填在__init__.py
(1)打开本项目文件夹
(2)打开Util文件夹
(3)打开文件__init__.py
将新获得的ttwid替代旧的ttid.

@boluohong boluohong added 故障(bug) 代码问题导致的错误(Bugs caused by code problems) 额外求助(help wanted) 非项目代码错误的求助(Extra attention is needed) 无效(invalid) 非代码故障导致错误或异常(Non-code faults causing errors or anomalies) labels Feb 23, 2023
@sunyulu-hub
Copy link

同上

@absir1949
Copy link

absir1949 commented Feb 23, 2023

@boluohong 我测试了下,使用 web接口,成功概率貌似高点
参数如下:
'sec_user_id='+sec_user_id+'&count='+count+'&max_cursor=0&device_platform=webapp&aid=6383&channel=channel_pc_web&msToken='+randomStr(107)

但依旧需要cookie:ttwid

我发现不登录抖音,依旧存在ttwid,用这个ttwid,可以获取到主页作品。

@Johnserf-Seed 是否可以有生成ttwid的接口呢?或者本地方法来模拟生成这个ttwid,可能是一个更好的解决方案。

@sunyulu-hub
Copy link

需要浏览器访问下这个用户的主页,从cookie 中获取ttwid,替换到代码Util 包下的__init__.py的header里面的ttwid(64行)就可以了

@Jalen-Sun
Copy link

现在还是不能获取用户数据,而且也不会有失败时的提示,我已经更新了也不行哇

@BuCaicai
Copy link

windows上可以获取到,linux机器上报错:获取用户数据失败,请从web端获取新ttwid,这是为什么呢

@Jalen-Sun
Copy link

我的是windows 用那个应用程序还是获取不到

@joostshao
Copy link

cookie

1%7CJtF5F2LkGzST_X88JWFM2fKXixiyIpRHquvLY4hIklI%7C1675431248%7Cb57809ba71ad02c593a9cd13e367c466ab22cf66788381356268f3fa821ca50d

这样? 这个格式有点奇怪,还有百分号,我以为是占位符号呢

@boluohong boluohong changed the title 高频率抓取失败,获取用户数据失败,请从web端获取新ttwid[BUG] (已解决附方法)高频率抓取失败,获取用户数据失败,请从web端获取新ttwid[BUG] Feb 23, 2023
@boluohong
Copy link
Author

需要浏览器访问下这个用户的主页,从cookie 中获取ttwid,替换到代码Util 包下的__init__.py的header里面的ttwid(64行)就可以了

鸣谢@sunyulu-hub ,按照指引操作后问题解决,非常感谢。

其他朋友有同样问题请按这种方法解决。

@Jalen-Sun
Copy link

怎么获取我只会用不会改。。。。

@BuCaicai
Copy link

怎么获取我只会用不会改。。。。

看一下 @sunyulu-hub 上面的方法

@Jalen-Sun
Copy link

怎么从cookie中获取 我啥也不懂 就只是用了这个软件

@boluohong
Copy link
Author

怎么获取我只会用不会改。。。。

1.获得ttwid
(1)在电脑浏览器中打开任意抖音主页
(2)按F12---->点击network选项卡--->点击doc选项
(3)再在左下角name选项卡中任选一项---->Headerr--->RequestHeaders--->cookie
(4)在cookie中找到ttwid选项
如果仍然不会,请谷歌“如何查看网页cookies”

2.将获得的ttwid填在__init__.py
(1)打开本项目文件夹
(2)打开Util文件夹
(3)打开文件__init__.py
将新获得的ttwid替代旧的ttid.

@Jalen-Sun
Copy link

我找到了ttwid,按照上面的指示把他粘贴在了_init_.py对应位置,但还是一直现实需要从web端更新,是我找的这个不对吗
image

@Jalen-Sun
Copy link

@boluohong

@Dongdong0112
Copy link

我找到了ttwid,按照上面的指示把他粘贴在了_init_.py对应位置,但还是一直现实需要从web端更新,是我找的这个不对吗 image

看看你改的 应该是把其它什么给删了

@Jalen-Sun
Copy link

image

@Dongdong0112
Copy link

image

重新获取个再试试?

@Jalen-Sun
Copy link

我重新获取,这个ttwid不会改变呀,而且之前无论我怎么换,失败的提示都不会出来,就一直批量显示获取用户数据失败,我就卸载重新装了一遍,现在会显示失败的提示了但就是运行不了

@Dongdong0112
Copy link

我重新获取,这个ttwid不会改变呀,而且之前无论我怎么换,失败的提示都不会出来,就一直批量显示获取用户数据失败,我就卸载重新装了一遍,现在会显示失败的提示了但就是运行不了
试试我用的?
ttwid = '1%7CPBZyFB0SfV3vOlC3tNDT1P_ttjpR_jjY6DCmjMxm7eM%7C1673196516%7Cd3d3136a87a5de0cc6e8f7ae7524da6ec814e5db7f0ef635fc0cd57396c6f6b1'
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36',
'referer': 'https://www.douyin.com/',
'Cookie': f'msToken={generate_random_str(107)};ttwid=%s;' % ttwid
}

@Jalen-Sun
Copy link

他竟然可以了,55555,万分感谢,这快折磨死我了

@Johnserf-Seed
Copy link
Owner

哈哈哈,研究了一下 找到注册ttwid的接口了,大家可以不用这么费力的去浏览器一遍遍取了,我稍后更新一下

Johnserf-Seed added a commit that referenced this issue Feb 23, 2023
目前版本请求必带参数
Johnserf-Seed added a commit that referenced this issue Jun 9, 2023
由于接口变化大,如遇刷新cookie还是无法获取的情况可以注释referer键或切换网络环境清除缓存重试。
#437 #432 #403 #335 #330 #329 #311
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
故障(bug) 代码问题导致的错误(Bugs caused by code problems) 额外求助(help wanted) 非项目代码错误的求助(Extra attention is needed) 无效(invalid) 非代码故障导致错误或异常(Non-code faults causing errors or anomalies)
Projects
None yet
Development

No branches or pull requests

8 participants