gpt4 book ai didi

matlab - webread给出的结果与网页的 'View Page Source'不同

转载 作者:行者123 更新时间:2023-12-03 05:48:47 25 4
gpt4 key购买 nike

我正在使用MATLAB从YouTube页面抓取一些网页。但是,与当我们“查看该网页的页面源代码”时相比,MATLAB的webread函数给出的结果有所不同。我使用了以下代码。

d = webread('https://www.youtube.com/channel/UCqqc1GmsuANsx3s3Y0CBsQ/playlists?view=1&sort=dd&shelf_id=0') 

我究竟做错了什么?我需要确切的文本,可以在该页面的“查看页面源代码”中看到。

最佳答案

差异可能源于MATLAB与浏览器使用的不同的User Agent。这是说明此的示例:

% Default request (MATLAB's UA):
URL = 'https://www.youtube.com/watch?v=B4jsmvNoXP4&list=PLk1Sqn_f33KuS7ZSVMJqzFaqOyyl-esmG&index=2';
data = webread(URL);

% Custom user-agent (Firefox UA):
UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0';
wo = weboptions('UserAgent', UA);
data2 = webread(URL, wo);

% Comparison:
disp(numel(data))
disp(numel(data2))

%{
Result:
243203
2794189
%}

如您所见,通过仅更改 'UserAgent'字符串,我们设法从网站(Web服务)获得了截然不同的答复。

我不能保证这是您在浏览器中获得的确切信息,但是如果您想提高获得相同响应的机会,那么您应该做的第一件事就是使用 与您所使用的浏览器完全相同的用户代理使用。如果您不确定浏览器的用户代理是什么,那么 whatismybrowser网站上有多种用户代理供您选择。

附言
我使用的YouTube URL略有不同,因为您链接的播放列表对我来说是不可访问的(或不存在)。

关于matlab - webread给出的结果与网页的 'View Page Source'不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57238497/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com