当前位置: 首页 > 面试题库 >

为什么Google搜索返回HTTP错误403?

常自怡
2023-03-14
问题内容

考虑以下Python代码:

 30 url =“ http://www.google.com/search?hl=zh_CN&safe=off&q=Monkey”
 第31章
 32 print(url_object.read());

运行此命令时,将引发异常:

File "/usr/local/lib/python3.0/urllib/request.py", line 485, in http_error_default
   raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden

但是,将其放入浏览器后,搜索将按预期返回。这里发生了什么?如何克服这个问题,以便可以通过编程方式搜索Google?

有什么想法吗?


问题答案:

如果您想通过编程界面“适当”进行Google搜索,请查看Google
API
。这些不仅是搜索Google的正式方法,而且如果Google更改结果页面的布局,它们也不太可能改变。



 类似资料:
  • GetFolder操作给了我同样的结果。 此错误通常由未经许可的邮箱帐户引起。但我的所有用户都有活跃的Exchange许可证。为什么我会得到这样的ErrorNonExistentMailbox错误响应?

  • 问题内容: 我尝试在两种情况下执行T-SQL查询(我使用Win7,python 3.2,MS SQL Server Express 2008,适用于python 3.2的pyodbc): -情况1: 使用MS SQL Server Management Studio,我尝试执行查询: 返回成功结果 情况2: 但是运行代码后,我收到错误消息 如果我没有运行代码 我没有收到任何错误。但为什么? 问题答

  • 我们在windows 10机器上从Tomcat 9.0.29升级到9.0.44,并收到503条错误消息。Tomcat托管Java应用程序。对Tomcat服务器的请求作为工作线程从单独的Apache代理服务器通过端口8010发送。我可以看到Tomcat服务正在运行,Java应用程序正在启动并运行。这可以从Tomcat服务器上的//localhost:8080/{JavaApp}进行验证。 但是,来自

  • 问题内容: 我有一台运行Java servlet的Tomcat服务器。我正在尝试使一个servlet返回给定的加密ID的存储文件。 编号:100 加密的ID:+ e4 / E5cR / aM = 网址编码的ID:%2Be4%2FE5cR%2FaM%3D 结果URL:http:// localhost / file / demo /%2Be4%2FE5cR%2FaM%3D 当我尝试访问该链接时,我什

  • 我有一个运行Java servlets的Tomcat服务器。我正在尝试制作一个返回存储文件的 servlet,给定它们的加密 ID。 编号: 100 加密ID:e4/E5cR/aM= URL编码的ID: +e4/E5cR/aM= 生成的网址:http://localhost/file/demo/+e4/E5cR/aM= 当我试图访问那个链接时,我甚至没有进入我的servlet的代码——服务器返回这

  • 获取航班低价搜索API的请求(例如:https://test.api.amadeus.com/v1/shopping/flight-offers?origin=NYC API中有什么变化?我怎样才能解决这个问题? 航班低票价搜索API-返回500错误