小爬蟲

注:本人菜鳥一枚,自學python,記錄學習過程中所學所思,希望自己有所收獲

__author__ = 'juehuan'
import requests
import json
import time


class cldata():
    def __init__(self):
        self.url = 'http://125.35.6.84:81/xk/itownet/portalAction.do?method=getXkzsList'
        self.header = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36'}
        self.cookie = {
            'Cookie': 'JSESSIONID=02EF275A008A3ADEE700B04B543AE18E; JSESSIONID=A7FC968A8F43B9DA2EABBA61D72602CC'}
        self.f = open('食品.txt', 'w', encoding='utf-8')
        self.f.write('企業名稱 | 許可證編號 | 發證機關 | 有效期至 | 發證日期\n')

    def get_cfda(self, page):
        self.data = {
            'on': True,
            'page': page,
            'pageSize': 15,
            'productName': '',
            'conditionType': 1,
            'applyname': '',
            'applysn': ''
        }
        self.html = requests.post(self.url, data=self.data, headers=self.header, cookies=self.cookie)
        datas = self.html.json()
        for i in datas['list']:
            self.write_cfda(i)

    def write_cfda(self, company):
        try:
            self.f.write('%s | %s | %s | %s | %s\n' % (
                company['EPS_NAME'], company['EPS_NAME'], company['QF_MANAGER_NAME'],
                company['XK_DATE'], company['XC_DATE']))
        except:
            print('寫入錯誤')

    def close(self):
        self.f.close()


if __name__ == '__main__':
    start_time = time.time()
    cfda = cldata()
    for i in range(1, 271):
        cfda.get_cfda(i)
    cfda.close()
    end_time = time.time()
    print('total time :', end_time - start_time)

總結:涉及面向對象(self)、爬蟲requests的post方式、列表等知識點;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1 #!/usr/bin/python 使用魔法字符調用python 2 3 from sys import ar...
    jazzi閱讀 755評論 2 0
  • 目的:用urllib2,爬一堆風景圖片 重點代碼 response = urllib2.urlopen(url)....
    l_sivan閱讀 315評論 0 2
  • 時隔一年,AI、無用階層、游戲人生……等話題越來越近,舊文新發~~~ 最近看了《機器危機》,它是 @七印部落 翻譯...
    iamsujie閱讀 5,484評論 21 69
  • 下面這張圖片是在畫一些圖型時所需參考的 UIBezierPath對象是CGPathRef數據類型的封裝。path如...
    Amanda_Lhy閱讀 494評論 0 0
  • 1. 算了。 2. 奶奶說她在家安了WiFi只是為了讓我在家多陪陪她。 3. 柴靜采訪星爺,星爺說的最后一句:“謝...
    水壺里面開帆船閱讀 683評論 0 2