使用面向对象的概念进行一个爬虫的编程。
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')
执行函数。