精华内容
下载资源
问答
  • 关于网站报400错误

    千次阅读 2018-04-10 12:31:19
    1.请求格式错误,data里面键值对写错。 2、某个链接已过期。 3、网速不稳定,而要求链接的网页存在FLASH或者大尺寸图片,造成响应过慢 4、服务器已关闭 5、DNS服务器错误...

    1.请求格式错误,data里面键值对写错。
    2、某个链接已过期。
    3、网速不稳定,而要求链接的网页存在FLASH或者大尺寸图片,造成响应过慢
    4、服务器已关闭
    5、DNS服务器错误

    展开全文
  • nginx 反向代理报400错误

    千次阅读 2019-10-18 15:14:02
    度娘了下说是后端服务器做了安全处理,可能对http请求头中的host字段进行了判断,如果缺乏host字段或host值不正确,将会导致失败,报400 解决办法: location中设置proxy_set_header Host $http_host;将host信息返回...

    问题描述:

    为后端接口配置了nginx反向代理后,请求后端接口时报400错误。

    度娘了下说是后端服务器做了安全处理,可能对http请求头中的host字段进行了判断,如果缺乏host字段或host值不正确,将会导致失败,报400

    解决办法:
    location中设置proxy_set_header Host $http_host;将host信息返回给后端服务器即可

    展开全文
  • 问题:“被网站检测出来是selenium,不让爬了”。 以下是报错及解决方案: !!!文中出现的网站是一个有此检测的案例,仅供学习参考!!! 一、报错: 1.报错截图(记住这个 true 哈,间接地代表你是selenium;咱们...

    问题:“被网站检测出来是selenium,不让爬了”。

    以下是报错及解决方案:

    !!!文中出现的网站是一个有此检测的案例,仅供学习参考!!!

    一、报错:

    1.报错截图(记住这个 true 哈,间接地代表你是selenium;咱们正常F12这里都是 false 的哈):在这里插入图片描述
    2.报错截图对应的代码:

    from selenium import webdriver
    import time
    
    class Crawl_ZhuanLi(object):
        def __init__(self):
            chromeoption = webdriver.ChromeOptions()
            # chromeoption.add_argument('--headless')    # 无头浏览器
            chromeoption.add_argument(
                'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36')
            self.driver_path = './windows_chromedriver.exe'
            self.driver = webdriver.Chrome(self.driver_path, chrome_options=chromeoption)
    
        def get_value(self,url):
            self.driver.get(url)
            print("开始爬取...")
            time.sleep(60)
    
    Crawl_ZhuanLi().get_value(url='http://cpquery.cnipa.gov.cn/')
    

    3.备注:

    (1)driver_path 对应的chromedriver路径请自行填写,
    (2)chromedriver下载地址:http://chromedriver.storage.googleapis.com/index.html
    (3)非爬虫操作时,我们在F12控制台输入window.navigator.webdriver时,显示的是false;
    在这里插入图片描述
    二、解决方案:

    1.在driver.get(url)前加入如下代码:

            self.driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
              "source": """
                Object.defineProperty(navigator, 'webdriver', {
                  get: () => undefined
                })
              """
            })
    

    2.效果:
    在这里插入图片描述

    三、完整代码:

    from selenium import webdriver
    import time
    
    class Crawl_ZhuanLi(object):
        def __init__(self):
            chromeoption = webdriver.ChromeOptions()
            # chromeoption.add_argument('--headless')    # 无头浏览器
            chromeoption.add_argument('--no-sandbox')  # 解决linux DevToolsActivePort文件不存在的报错
            chromeoption.add_argument(
                'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36')
            self.driver_path = './windows_chromedriver.exe'
            self.driver = webdriver.Chrome(self.driver_path, chrome_options=chromeoption)
    
        def get_value(self,url):
            # 下面这行代码目的为:防止网站识别出是selenium
            self.driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
              "source": """
                Object.defineProperty(navigator, 'webdriver', {
                  get: () => undefined
                })
              """
            })
            self.driver.get(url)
            print("开始爬取...")
            time.sleep(60)
    
    Crawl_ZhuanLi().get_value(url='http://cpquery.cnipa.gov.cn/')
    

    四、分析总结:

    1.为什么我们进不了网站

    待爬取网站运行自己的 JavaScript 代码,对我们(爬虫)发送过去的请求信息进行检测,然后发现我们是selenium后,把我们(爬虫)的请求禁掉了。
    (比如待爬网站做了一个 window.navigator.webdriver 检测,发现你返回的是 true

    2.解决思路

    在待爬取的网站运行其自带的 JavaScript 代码前,先执行下我们的js代码,去隐藏或修改掉我们的window.navigator.webdriver信息

    3.按照思路,如何解决

    利用Chrome 开发工具协议( 简称CDP ),在 Selenium 中调用 CDP 的命令。

    即:在使用selenium时,使用driver.execute_cdp_cmd命令,传入需要调用的 CDP 命令和参数,之后selenium会帮我们对Chrome的window.navigator.webdriver信息进行调整。

    selenium会给定一段 JavaScript 代码,让 Chrome 刚打开页面,还没运行网站自带的 js 代码时,就先执行一个js,修改Chrome的window.navigator.webdriver

    4.查找文档,逐个分析

    (1)execute_cdp_cmd: selenium去执行CDP方法。
    这里的英文逐字拼起来,我理解为:执行(execute),按照Chrome开发协议(CDP),在终端命令行(cmd)。
    即:在Chrome浏览器控制台终端,按照其开发协议,执行XX命令。
    在这里插入图片描述

    (2)Page.addScriptToEvaluateOnNewDocument

    从CDP 的官方文档,我们可以看到 Page.addScriptToEvaluateOnNewDocument 的作用是:在页面创建前(也是被爬页面的script加载前),先执行截图里的 javascript。
    即:1.添加javascript; 2.在frame(页面)加载前;
    (这里做过前端的可以参考下vue的生命周期,这里涉及了html的生命周期);在这里插入图片描述
    在这里插入图片描述

    (3)

    Object.defineProperty(navigator, 'webdriver', {
       get: () => undefined
    })
    

    作用:定义webdriver浏览器驱动的 navigator 的值为 undefined。
    在这里插入图片描述

    4.备注
    (1)除了上述这个方法,还有别的方法解决此问题;
    (2)仅较新版本的 Chrome+ChromeDriver 适用此方法,不兼容的话,可以考虑升级下,不过较老版本的Chrome,也有对应老版本的方法来解决此问题(不过老版本方法,不兼容新版本)。

    五、参考资料:

    1.CPD 的官方文档: https://chromedevtools.github.io/devtools-protocol/tot/Page#method-addScriptToEvaluateOnNewDocument

    2.selenium官方文档:https://www.selenium.dev/selenium/docs/api/py/webdriver_chromium/selenium.webdriver.chromium.webdriver.html?highlight=execute_cdp_cmd#selenium.webdriver.chromium.webdriver.ChromiumDriver.execute_cdp_cmd

    3.最初参考网站(感谢):
    https://www.cnblogs.com/presleyren/p/12936553.html

    展开全文
  • 解决跳转ICP备案网页报400的问题

    千次阅读 2020-01-06 11:07:23
    在跳转的过程中发生报400错误的问题: 原因:在网页跳转的过程中,使用了在浏览器地址栏里面直接复制的http地址http://www.beian.miit.gov.cn/state/outPortal/loginPortal.action,400表示错误...

    网站运行需要进行ICP备案。在备案之后需要在网页最下方清晰的展示备案号,点击备案号需要能够跳转到工信部的ICP/IP地址/域名信息备案管理系统。在跳转的过程中发生报400错误的问题:
    400
    原因:在网页跳转的过程中,使用了在浏览器地址栏里面直接复制的http地址http://www.beian.miit.gov.cn/state/outPortal/loginPortal.action,400表示错误的请求,服务器不会或不能处理该请求;
    解决:在工信部备案系统网站底部找到了它的ICP备案,鼠标放在上面展示出来了它的跳转域名:icpWebsite
    然后直接更换网站跳转链接为http://www.beian.miit.gov.cn/,问题解决。

    展开全文
  • 服务器大量报400错误

    2013-09-11 18:03:46
    说明:配置负载均衡后,在查看nginx访问日志的时候,经常看到这些http 400错误:xxx.xxx.xxx.xxx --[22/Aug/2013:13:58:13+0800]"GET / HTTP/1.1"20066"-""Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW...
  • https IE 下导出excel报400的错误

    千次阅读 2018-06-14 12:06:20
    最近项目中需要导出excel,在本地环境中测试通过后,部署到服务器上,在谷歌、火狐浏览器上是正常的,在IE下就如下图错误:出现此问题的原因是当时因为偷懒,在前台就把导出的文件名传输到后台,然后https网站可能...
  • 今天出现微信安卓突然进不了网站 http 400 Bad Request -Invalid Header name错误 后面这个问题微信自处理了,没有找到问题出在哪里在。 网上查了一下,有人说是https协议没有问题。 微信已经出现过几次这样...
  • 常见的400错误: 前后端交互的方法参数不一致,发生此错误需要仔细检查前端传递的参数数据的参数名、参数数目、参数类型是否与后端保持一致。 常见的403错误: 403错误,是一种在网站访问过程中,常见的错误提示...
  • 网站可以正常打开,访问网站后台时出现错误 400 Bad Request Request Header Or Cookie Too Large nginx 解决办法: 1、清除浏览器的Cookie缓存和缓存文件 2、更换其他浏览器 3、使用360安全卫士修复 是否...
  • 调用API接口404错误,400错误

    千次阅读 2020-08-18 14:52:12
    API接口从.net core 2.1升级到3.1之后,发现之前程序调用的接口,一部分正常,一部分报错,有404,也有400! 问题解决思路: 经过排查后发现,404是因为调用路径中出现了双斜杠(//),升级前还是兼容识别的。。。...
  • B2B网站建设的投入与回报分析

    千次阅读 2014-02-25 11:24:18
    以前写过几篇关于创业做B2B电子商务网站的文章,比如:创业做B2B行业网站现在还能成功吗?、B2B行业网站未来5年发展趋势预测、B2B行业门户网站投资回报及风险控制分析等文章,许多时候,很多人在QQ上都问:李学江,您...
  • nginx502、504、400、413错误

    千次阅读 2013-06-28 12:58:21
    我在CentOS下配置lnmp组合基本上用的都是同样的配置文件,一直都没出现过问题,可最近在一个vps上安装同样的环境之后,网站在线10多人就出现了打开速度非常缓慢的情况,有好几次都是直接达到了nginx中设置的脚本最大...
  • 400个可以发外链的网站

    千次阅读 2010-10-13 09:50:00
    大部分都是PR2、PR3的[在家上网怎么赚钱的分享] 既然前面已经分享了支持外链的相册 ,索性就把自己呕血整理的400个可以发网站的链接分享出来!彻底让大家解决外链难的麻烦!400网站其中有收录非常快的!你只要每天...
  • 访问网站时,出现400错误

    千次阅读 2014-09-30 16:01:00
    400 Bad RequestRequest header or cookie too large. Sorry for the inconvenience.Please report this message and include the following information to us.Thank you very much! URL: ...
  • 在IIS上部署网站,网页引用woff字体时,浏览器“找不到woff字体”、“404”错误,不仅预设的字体加载不出来,还影响网页加载速度。 二、原因 IIS默认设置情况下不识别.woff、.woff2、.svg这几个后缀的文件。 三、...
  • 我们在浏览器中输入url地址,能正常访问网页,但是当我们使用curl "地址"时返回400错误 二、原因 1.如果该请求是属于post请求,我们在浏览器中输入"http://dsdd?name=dssd";是可以访问的  2.但是在curl命令中...
  • httpclient post 总是返回400

    万次阅读 2019-01-31 10:50:49
    因为我当时连参数都没有带上,所以心里想的是怎么可能报400错误呢?要报也应该提示我没有带上参数才对啊。 以下是我要模拟的接口图: 因为我在POSTMAN里面content-type使用的是x-www-form-urlencodeed返回的是...
  • HTTP400

    2016-09-28 17:19:01
    通过ajax触发按钮事件能获取RequestParam 而直接在地址栏输入URL会报400错误:Required Long parameter ''xxx" is not present
  • HTTP 400 Bad request 原因

    千次阅读 2019-07-28 11:33:00
    我的代码部署在Linux测试环境,我在使用 httpclient 发送http请求时遇到问题,请求报400 Bad request。网上都在说下面这两个原因 400 是 HTTP 的状态码,主要有两种形式: 1、bad request 意思是 "错误的请求...
  • 客服案例之Bug

    千次阅读 2013-11-27 12:24:17
    CSDN在网站上提供了多个客服通道,如QQ, 400电话,邮件,论坛,和微博。有些用户更愿意用微博,但不是直接AT客服,而是AT创始人蒋涛。蒋涛收到投诉,还是会转给客服部门,有时转给我。我就提交了一个微博上得到的...
  • 访问后台报错:400

    千次阅读 2018-12-12 09:24:31
    在ajax请求后台数据时有时会报 HTTP 400 错误 - 请求无效 (Bad request); 出现这个请求无效报错说明请求没有进入到后台服务里; 原因: 1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装...
  • 请求400错误和请求404错误

    千次阅读 2019-02-26 22:21:24
    请求400错误和请求404错误 400:说明此请求还未执行controller层,原因大多是传递参数与接收参数中有类型不一致或字段不匹配造成的 404:页面未找到,查看请求地址是否正确 500:服务器内部错误,我遇到的情况就是:...
  • 接到任务,保证站点支持并发400。 1.官网下载二进制windows包,解压后,在目录下的bin目录下有.jar文件,双击打开 2.安装java,官方网站需要登录后,才允许下 3.打开后,参考...
  • 但是购买往返机票的时候,进入到下单页时,发现下单页所有接口都400的错误,继而再访问该网站的其他页面也都400的错误。 一般来说400报错是因为前后端参数格式或者请求头不一致导致的问题,前.
  • 400错误请求怎么解决A 400 Bad Request Error occurs when a request sent to the website server is incorrect or corrupt, and the server receiving the request can’t understand it. Occasionally, the ...
  • Nginx 400错误研究

    2014-12-27 21:05:00
    这几天游戏上线在查看Nginx的访问日志时,发现有很多HTTP返回码为400的记录。 以下是Nginx的访问日志: 222.89.55.137--[27/Dec/2014:19:35:15+0800]"POST/dia... 网站查了很多文档关于400问题的解决方法: 1.修改...
  • 如果问题仍然存在,请与网站所有者联系。 HTTP ERROR 400   Failed to load resource: the server responded with a status of 400 (Bad Request)     切换环境时发现访问链接时报错400,确认代码无问题 ...
  • HTTP错误码对照表HTTP Error Codes

    千次阅读 2019-08-10 09:42:50
    400 Invalid syntax. 语法问题 401 Access denied. 访问拒绝 402 Payment required. 必须完整 403 Request forbidden. 请求被禁止 404 Object not found. 对象没有找到 405 Method is not allowed. 方法不允许 406 N...
  • 除非进行修改,否则客户端不应该重复提交...在这段时间笔者遇到了好几次生产问题Nginx报400异常,且原因细究下来各不相同,有些甚至在网上没有搜到类似案例。遂产生了兴趣,做了本次梳理,希望会对大家有一定帮助! ...
  • springmvc自定义参数类型绑定 今天在进行项目开发的时候,提交表单的时候报400错误。从代码的逻辑到前端各个字段...也正是这个问题导致网站报400错误。  问题找到了,接写来就是解决问题的方法了----配置自定义参

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,956
精华内容 5,982
关键字:

网站报400