zoukankan      html  css  js  c++  java
  • 提取header头进行模块化处理

    在进行爬取网上东西的时候一般网站都做了UA的过滤,解决办法就是在代码中加入。

    所以才有了本篇提取header头信息单独写成一个模块或者说是函数/类的想法,直接上示例

    1、把UA头信息在浏览器中复制出来,并存在一个txt文档中,如下是我提取的示例:

    1 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    2 Accept-Language:zh-CN,zh;q=0.9
    3 User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36

    2、编写python代码,如下是我编写的python方法,也可以写成类,把公共的东西放在这里

     1 '''
     2 读取文本内容并生成请求header头信息
     3 '''
     4 def auto_make_header():
     5     ress_con = open("headers.txt","r",encoding="utf-8").readlines()
     6     keyy = []
     7     veluess =[]
     8     for ress in ress_con:
     9         res = ress.split(":")
    10         keyy.append(res[0])
    11    
    12         veluess.append(res[1].replace("
    ",""))
    13    
    14     header = dict(zip(keyy,veluess))
    15     return header
    16 
    17 # print(auto_make_header())

    3、在编写请求的时候直接引用过来就可以了,减少了代码的书写,为提高工作效率节约了时间。如下是我编写的小例子

    1 import requests
    2 from make_header import auto_make_header
    3 headers = auto_make_header()
    4 
    5 url = "http://www.baidu.com"
    6 res = requests.get(url=url,headers=headers)
    7 print(res.text)

    好了,本篇的小技巧小案例就到此了,是不是python写代码很简单。

  • 相关阅读:
    【开发者笔记】C#连接mysql问题记录
    【开发者笔记】揣摩Spring-ioc初探,ioc是不是单例?
    【开发者笔记】c# 调用java代码
    【数据库乱码】记录一下数据库乱码问题
    字符函数
    单行函数和多行函数
    rownum和rowid伪列
    排序子句
    单引号的转义
    逻辑运算符
  • 原文地址:https://www.cnblogs.com/hanxiaobei/p/9350098.html
Copyright © 2011-2022 走看看