Python如何快速製作請求頭?

在寫Python爬蟲的時候,經常要使用請求頭去僞裝成正常用戶行爲。請求頭是向服務器發送請求時傳遞額外的重要信息。例如下圖:

圖片


可以看到請求頭裏包含了很多信息,Cookie、User-Agent、Host等。把這些信息複製到文件裏是這樣的:

圖片

如果要使用請求頭,就要把這些信息存入字典,一個比較笨的方法就是在每個鍵和值兩邊加上單引號。但是這樣的話未免太麻煩,而且不太符合我們會python這個形象。那麼有沒有更好的方法呢?答案當然是肯定的。在介紹這個方法之前,先來學習一下split()。

圖片


split()是字符串的方法,主要用來根據某個字符去分割字符串,然後把後的結果作爲列表返回。下面看一下一些例子。

#定義字符串s = 'To be or not to be,that\'s a question.'#默認以空格作爲分割符s.split()

圖片

#定義字符串s = '我是誰?我從哪裏來?我要到哪裏去?'#以“我”這個字符作爲分割符s.split('我')
#定義字符串s = '小明一把把把把把住了'>#當分割符在字符串裏相鄰時,會分割出空字符串s.split('把')

圖片


觀察一下請求頭,可以發現每一行都是“鍵: 值”這樣的形式,那麼先用split()根據“\n”分割出每一行,然後根據“: ”分割出鍵值對,即可生成字典。

#定義請求頭字典headers = {}#定義請求頭字符串string = '''User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36'''#用循環將鍵值對寫入請求頭字典for line in string.split('\n'):    key = line.split(': ')[0]    value = line.split(': ')[1]    headers[key] = value

圖片


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章