爬蟲百戰穿山甲(五)pandas請求出戰

      網友投稿 787 2025-04-02

      情緒萎靡不振,并不想說話,咱直接看代碼吧。

      import requests from fake_useragent import UserAgent import pandas as pd #import requests_cache import json # https://movie.douban.com/j/new_search_subjects?sort=U&range=0,10&tags=&start=20 def get_url_json(url): ''' 使用requests.get方法 獲取url中的json數據 :parameter url:網址https://movie.douban.com/j/new_search_subjects?sort=U&range=0,10&tags=&start=20 :returns 列表,包含電影數據 ''' res = requests.get(url, headers={'User-Agent': UserAgent().random}) if res.status_code == 200: return res.json()['data'] return [] import time def from_douban_to_jsonl(file_name): ''' 調用get_url_json方法獲取數據,并且將數據存儲到jsonl文件中 :parameter file_name:將要存儲的文件名 ''' for i in range(0,200,20): url = 'http://movie.douban.com/j/new_search_subjects?sort=U&range=0,10&tags=&start='+str(i) print(url) movies = get_url_json(url) time.sleep(2) with open(file_name,'a+') as db: for movie in movies: db.write(json.dumps(movie)) db.write('\n') def manage_data(file_name): ''' 將數據從文件中讀取,并對數據進行一波處理 :param file_name: 將要讀取的文件名 :return: ''' df = pd.read_json(file_name,lines=True) # 讀取jsonl文件 df.drop_duplicates(subset='id') # 數據去重 df = df.set_index('id') # 設置索引列,返回一個新的對象 df = df[['casts','cover','directors','rate','star','title','url']] # 選擇要保存的列 # 使用apply方法按列處理演員和導演數據 df['main_cast'] = df['casts'].apply(lambda x:x[0] if len(x)>0 else '') df['director'] = df['directors'].apply(lambda x:x[0] if len(x)>0 else '') # 去掉列表中的‘[]’,轉化為字符串 df['casts'] = df['casts'].apply(lambda x:','.join(x)) df['directors'] = df['casts'].apply(lambda x:','.join(x)) from_douban_to_jsonl('doubanmovie.jsonl') manage_data('doubanmovie.jsonl')

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      16

      17

      18

      19

      20

      21

      22

      23

      24

      25

      26

      27

      28

      29

      30

      31

      32

      33

      34

      35

      36

      37

      38

      39

      40

      41

      42

      爬蟲百戰穿山甲(五)pandas請求出戰

      43

      44

      45

      46

      47

      48

      49

      50

      51

      52

      53

      54

      55

      56

      57

      58

      59

      60

      學到了啥,我覺得除了基本知識以外,最重要的一點就是代碼文檔吧。

      以前從來沒有寫過這樣的文檔。

      其他

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何插入圖片后不被壓縮清晰度?(怎么壓縮圖片還不影響清晰度)
      下一篇:論文查重檢測會留痕跡嗎,學校會不會發現已檢測過的論文?
      相關文章
      风间由美在线亚洲一区| 久久久久亚洲Av片无码v| 国产亚洲精AA在线观看SEE| 亚洲精品动漫人成3d在线| 亚洲高清乱码午夜电影网| 亚洲av无码国产综合专区| 亚洲精品亚洲人成在线麻豆| 亚洲综合一区二区精品久久| 亚洲国产成人私人影院| 91在线亚洲精品专区| 91在线亚洲精品专区| 亚洲午夜一区二区电影院| 亚洲免费二区三区| 亚洲人xxx日本人18| 亚洲色偷偷色噜噜狠狠99网| 亚洲色精品三区二区一区| 日本亚洲欧美色视频在线播放| 亚洲AV成人一区二区三区观看| 国产精品自拍亚洲| 亚洲国产精品日韩专区AV| 色噜噜AV亚洲色一区二区| 久久精品国产亚洲网站| 亚洲欧洲国产日韩精品| 亚洲国产精品国自产电影| 亚洲欧洲国产精品久久| 亚洲AV无码无限在线观看不卡 | 亚洲午夜无码久久久久软件 | 日韩国产欧美亚洲v片| 亚洲国产成人久久一区久久| 亚洲中文字幕无码爆乳AV| 亚洲高清在线观看| 精品亚洲成在人线AV无码| 亚洲精品无码久久久久牙蜜区| 亚洲Av无码国产情品久久| 国产亚洲精品看片在线观看| 亚洲V无码一区二区三区四区观看| 在线免费观看亚洲| 亚洲一卡2卡三卡4卡无卡下载| 久久精品国产亚洲av品善| 久久99亚洲综合精品首页| 亚洲AV电影院在线观看|