• 03_Python爬蟲入門遇到的坑__向搜索引擎提交關鍵字01


    3. 向360搜索提交問題:

    使用代碼模擬使用360搜索.大概就是要得到下面這個頁面.

    首先我們要知道360給出的接口是:https://www.so.com/s?q=kewword

    其中的keyword就是我們提交的關鍵字.

    這時候我們可以使用一個字典向瀏覽器提交關鍵字:

    kv = {"q": "python"}

    然後使用params屬性提交這個自帶即可.

    示例代碼如下:

    import requests
    
    # 接口
    url = "https://www.so.com/s?"
    # 需要提交的字典(我們要搜索的內容,此處假設為python)
    kv = {"q": "python"}
    # 訪問偷
    head = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.100 Safari/537.36",
    }
    try:
        # 請求頁面
        r = requests.get(url, headers=head, params=kv)
        # 判斷請求狀態
        r.raise_for_status()
        # 輸出源碼
        print(r.text)
        print("成功!!")
    except:
        print("頁面獲取失敗!")

    如何獲取接口:

    所謂的接口說白了就是某個特定格式的URL.

    1. 打開360搜索

    360首頁

    2. 搜索任意關鍵字,最好比較有識別度,我這裡搜索:好看的小姐姐

    輸入任意關鍵字

    3. 點擊搜索,并獲得此時的鏈接:https://www.so.com/s?ie=utf-8&fr=none&src=home_www&nlpv=3.8.045ayc&q=%E5%A5%BD%E7%9C%8B%E7%9A%84%E5%B0%8F%E5%A7%90%E5%A7%90

    (鏈接粘貼出來關鍵字會變成亂碼,所以後面一長串奇奇怪怪的東西就是你原本輸入的關鍵字)

    獲取當前鏈接

    4. 獲取接口:其實取得這個鏈接的時候你已經取得了接口,因為你只需要替換到關鍵字就可以了,但是我們還能把這個接口縮短一點.

      4.1. 確定要保留的:

        4.1.1. 問號之前的內容全部保留

        4.1.2. 關鍵字等號兩邊(包括等號)是要保留的,左邊截止到"&"符號,右邊截止到關鍵字結束

      4.2. 其餘的全部刪除,剩下的部分就是(簡短)接口

    總結:使用params可以向網站發起搜索,但是需要自己找到對應的接口,因此如何獲取接口雖然是簡單的,但是必備的.

  • 相关阅读:
    其他技术----mongoDB基础
    redis学习----Redis入门
    网络通信学习----HTTP请求方法
    spring boot 学习 ---- spring boot admin
    java拓展----(转)synchronized与Lock的区别
    spring boot 学习 ---- spring MVC
    解决ubuntu的apt-get命令被占用
    阴暗
    图像分割实战-视频背景替换
    「知乎」你们觉得响应式好呢,还是手机和PC端分开来写?
  • 原文地址:https://www.cnblogs.com/ltozvxe/p/12866632.html
Copyright © 2020-2023  润新知