票(一)

import requests
from lxml import etree
import openpyxl as opt
import xlwt
import time

workbook_one = xlwt.Workbook(encoding='utf-8')
sheet_one = workbook_one.add_sheet('表一')
sheet_one.write(0,0,'')
sheet_one.write(0,1,'')
sheet_one.write(0,2,'')

workbook_two = xlwt.Workbook(encoding='utf-8')
sheet_two = workbook_two.add_sheet('表二')
sheet_two.write(0,0,'')

outwb = opt.load_workbook('城市_code.xlsx')
sheetnames = outwb.get_sheet_names()
outws = outwb.get_sheet_by_name(sheetnames[0])

wb_one = opt.Workbook()
ws_one = wb_one.create_sheet(title='三字码')
wb_two = opt.Workbook()
ws_two = wb_two.create_sheet(title='城市')

headers = {
  'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36',
}

count = 0
number = 0
row_num = outws.max_row
for row_n in range(row_num):
    print(row_n)
    time.sleep(6)
    str = outws.cell(row=row_n+1, column=1).value
    print(type(str))
    url = 'https://airportcode.51240.com/{}__airportcodesou/'.format(str)

    res = requests.get(url,headers=headers).text
    html = etree.HTML(res)
    tr_lis = html.xpath('//*[@id="main_content"]/table/tr/td/table/tr')
    try:
        if len(tr_lis)>1:
            for tr in tr_lis[1:]:
                    count+=1
                    city = tr.xpath('td[1]/a/text()')[0]
                    code = tr.xpath('td[2]/text()')[0]
                    jichang = tr.xpath('td[4]/text()')[0]
                    # print(type(str(city)),type(code),type(jichang))
                    print(city,code,jichang)
                    # ws_one.cell(row=count,column=1).value=str
                    # ws_one.cell(row=count,column=2).value=code
                    # ws_one.cell(row=count,column=3).value=jichang
                    sheet_one.write(count,0,str)
                    sheet_one.write(count,1,code)
                    sheet_one.write(count,2,jichang)
        else:
                number+=1
                print('***********************',str)
                sheet_two.write(number,0,str)
    except:
        number += 1
        print('****************************')
        print('***********************', str)
        sheet_two.write(number, 0, str)
workbook_one.save('三字码(三).xls')
workbook_two.save('城市(三).xls')




# import requests
# from lxml import etree
# url = 'https://airportcode.51240.com/%E5%8C%97%E4%BA%AC__airportcodesou/'
#
# res = requests.get(url).text
# html = etree.HTML(res)
#
# #列表
# tr_lis = html.xpath('//*[@id="main_content"]/table/tr/td/table/tr')
# print(tr_lis)
# for tr in tr_lis:
#     print(tr)
#     city = tr.xpath('//td/a/text()')[0]
#     code = tr.xpath('//td/text()')[1]
#     # city = tr.xpath('//td/a/text()')
#     # code = tr.xpath('//td/text()')
#     print(city,'**********************',code)

猜你喜欢

转载自blog.csdn.net/baidu_32542573/article/details/89343856