面向对象的爬虫实现

使用面向对象的概念进行一个爬虫的编程。

class get_string_xml():

    def __init__(self) -> None:
        self.header = {
            'header':'Mozilla/5.0 (Windows NT 10.0; WOW64)'
        }

将目标数据抓取下来后转换成xml格式类型机型存储

    def loginn(self):
        url = 'http://URL/login'
        data = {
            'username':'ADMIN',
            'password':'PWD',
        }
        self.se = session()
        res = self.se.post(url=url,headers=self.header,data=json.dumps(data))
        token,user = res.headers['Token'],res.headers['User']

在类中定义一个登录函数,记录登录后的用户Token

   def get_data(self):
        
        tt = self.se.get(url='http://url/xxxxxxxx'.format(pro_id,lan_id),
                         headers=self.header_data)
        all_index = json.loads(tt.text)
        try:
            lan = json.loads(tt.text)['xxxx']
        except:
            raise 

 定义解析抓取数据的函数。(抓取下的网页内容较为简单

n = sorted(_data,key=cmp_to_key(gg))
            
        with open(file_name + '.xml','a+',encoding='utf-8') as t:
              xml_example = '     <string name="%(e)s">%(c)s</string>'
              for i in n:
                  bb = xml_example % {'e':i['key'],'c':i['translate']}
                  t.write(bb + '\n')

 将抓取的数据进行自定义排序(cmp)

打开本地的文件,循环抓取到的数据将其写入本地文件中

if __name__ == '__main__':
    demo = get_string_xml()
    demo.loginn()
    produce_id = input('please enter produce_id: \n')

 

 执行函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值