Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 草草线禁成18年在线视频,99久久亚洲精品影院,国产精品女人在线观看

          整合營銷服務商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          python3快速爬取房源信息,并存入mysql數(shù)據(jù)

          python3快速爬取房源信息,并存入mysql數(shù)據(jù)庫,超詳細

          做一個有趣的項目,首先整理一下思路,如何快速爬取關鍵信息。并且實現(xiàn)自動翻頁功能。
          想了想用最常規(guī)的requests加上re正則表達式,BeautifulSoup用于批量爬取

          import requests
          import re
          from bs4 import BeautifulSoup
          import pymysql

          然后引入鏈接,注意這里有反爬蟲機制,第一頁必須為https://tianjin.anjuke.com/sale/,后面頁必須為’https://tianjin.anjuke.com/sale/p%d/#filtersort’%page,不然會被機制檢測到為爬蟲,無法實現(xiàn)爬取。這里實現(xiàn)了翻頁功能。

          while page < 11:
          
           # brower.get("https://tianjin.anjuke.com/sale/p%d/#filtersort"%page)
           # time.sleep(1)
           print ("這是第"+str(page) +"頁")
           # proxy=requests.get(pool_url).text
           # proxies={
           #     'http': 'http://' + proxy
           #         }
           if page==1:
            url='https://tianjin.anjuke.com/sale/'
            headers={
                    'referer': 'https://tianjin.anjuke.com/sale/',
                    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',
          
                    }
           else:
            url='https://tianjin.anjuke.com/sale/p%d/#filtersort'%page
            headers={
                    'referer': 'https://tianjin.anjuke.com/sale/p%d/#filtersort'%page,
                    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',
          
                    }
           # html=requests.get(url,allow_redirects=False,headers=headers,proxies=proxies)
           html=requests.get(url, headers=headers)
          

          第二步自然是分析網(wǎng)頁以及如何實現(xiàn)自動翻頁,首先找到圖片


          正則表達式走起!

          #圖片地址
           myjpg=r'<img src="(.*?)" width="180" height="135" />'
          
           jpg=re.findall(myjpg,html.text)

          照片信息已經(jīng)完成爬取,接下來依葫蘆畫瓢,把其它信息頁也迅速爬取!

          #描述
           mytail=r'<a data-from="" data-company=""  title="(.*?)" href'
           tail=re.findall(mytail,html.text)
          # 獲取總價
           totalprice=r'<span class="price-det"><strong>(.*?)</strong>'
           mytotal=re.findall(totalprice,html.text)
          #單價
           simpleprice=r'<span class="unit-price">(.*?)</span> '
           simple=re.findall(simpleprice,html.text)

          接下來實現(xiàn)用beauitfulsoup實現(xiàn)關鍵字標簽取值!解析器我這里用lxml,速度比較快,當然也可以用html.parser

          soup=BeautifulSoup(html.content,'lxml')


          看圖,這里用了很多換行符,并且span標簽沒有命名,所以請上我們的嘉賓bs4


          這里使用了循環(huán),因為是一次性爬取,一個300條信息,由于一頁圖片只有60張,所以將其5個一組進行劃分,re.sub目的為了將其中的非字符信息替換為空以便存入數(shù)據(jù)庫

          #獲取房子信息
           itemdetail=soup.select(".details-item span")
          # print(len(itemdetail))
           you=[]
           my=[]
           for i in itemdetail:
              # print(i.get_text())
          
              you.append(i.get_text())
           k=0
           while k < 60:
              my.append([you[5 * k], you[5 * k + 1], you[5 * k + 2], you[5 * k + 3],re.sub(r'\s', "", you[5 * k + 4])])
              k=k + 1
           # print(my)
           # print(len(my))
          

          接下來存入數(shù)據(jù)庫!

          db=pymysql.connect("localhost", "root", "" ,"anjuke")
           conn=db.cursor()
           print(len(jpg))
           for i in range(0,len(tail)):
              jpgs=jpg[i]
              scripts=tail[i]
              localroom=my[i][0]
              localarea=my[i][1]
              localhigh=my[i][2]
              localtimes=my[i][3]
              local=my[i][4]
              total=mytotal[i]
              oneprice=simple[i]
              sql="insert into shanghai_admin value('%s','%s','%s','%s','%s','%s','%s','%s','%s')" % \
                    (jpgs,scripts,local,total,oneprice,localroom,localarea,localhigh,localtimes)
              conn.execute(sql)
              db.commit()
           db.close()
          

          大功告成!來看看效果!


          以下為完整代碼:

          這個程序會出現(xiàn)資料庫有的 3 個朋友,然后加上一個朋友 Howard,加了之后再將整個資料庫在控制臺打印出來,這樣就會有 4 個了,多了一個,就是在這里加的。

          程序與之前的差異在于加了函數(shù),在這里有 SQL、INSERT、INTO、friends、VALUES,兩個問號相對應的是 f_name、f_phone,這是資料庫的名字和電話,這種寫法就可以調用函數(shù)。

          . 問題描述


          主站蜘蛛池模板: 99无码人妻一区二区三区免费| 中文字幕无线码一区2020青青| 又紧又大又爽精品一区二区| 无码欧精品亚洲日韩一区夜夜嗨| 国产一区二区三区免费| 亚洲av色香蕉一区二区三区 | 国产一区二区福利| 国产精品亚洲专一区二区三区| 精品国产aⅴ无码一区二区| 久久亚洲国产精品一区二区| 国产vr一区二区在线观看| 国产一区韩国女主播| 国产综合精品一区二区| 无码人妻精品一区二区蜜桃网站| 久久4k岛国高清一区二区| 一本一道波多野结衣一区| 精品无码国产AV一区二区三区| 无码人妻一区二区三区免费n鬼沢| 成人国产一区二区三区| 中文字幕一区视频一线| 大伊香蕉精品一区视频在线| 国产精品一区三区| 真实国产乱子伦精品一区二区三区| 福利一区福利二区| 亚洲A∨精品一区二区三区| 国产精品区AV一区二区| 成人精品视频一区二区三区| 日韩制服国产精品一区| 国产精品美女一区二区视频| 无码人妻久久久一区二区三区| 亚洲国产一区在线| 日韩中文字幕一区| 成人区人妻精品一区二区三区| 日韩AV无码一区二区三区不卡| 美女AV一区二区三区| 亚洲国产高清在线一区二区三区| 久久一区二区三区99| 无码人妻久久久一区二区三区| 亚洲欧美日韩中文字幕在线一区| 色婷婷亚洲一区二区三区| 国产精品毛片一区二区|