日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

python爬虫requests源码链家_Python爬虫之---爬链家

發(fā)布時(shí)間:2025/3/11 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬虫requests源码链家_Python爬虫之---爬链家 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一個(gè)簡(jiǎn)單的實(shí)例,可以采用。做的demo。

#!/usr/bin/python

# -*- coding: utf-8 -*-

# @Time : 2020/6/4 15:55

# @Author : Xuegod Teacher For

# @File : 01_get_price_test.py

# @Software: PyCharm

'''

第一步:下載所有的html

第二步:利用xpath爬取匹配

第三步:保存到mongodb數(shù)據(jù)庫(kù)中

'''

import requests #pip install requests

from lxml import etree # pip install lxml

#模擬瀏覽器的版本信息,python 腳本 模擬瀏覽器

#pip install fake-useragent

from fake_useragent import UserAgent

import pymongo #pip install

IP = '127.0.0.1'

PORT = 27017

Name = 'sun'

client = pymongo.MongoClient(IP,PORT)

db = client.sun

collection = db.lanjia

#模擬瀏覽器的頭部信息

headers = {

"User-Agent":UserAgent().random

}

base_url = 'https://bj.lianjia.com/ershoufang/pg{}/'

#todo:下載整個(gè)網(wǎng)頁(yè)的html

def load_page(url):

'''

:param url: 頁(yè)面的url地址

:return: HTML界面

'''

try:

response = requests.get(url,headers=headers)

if response.status_code == 200:

print('頁(yè)面響應(yīng)成功')

#返回整體的html文本str類型

return response.text

except:

print('網(wǎng)絡(luò)請(qǐng)求錯(cuò)誤')

#todo:提取我想要的數(shù)據(jù)

def parse_html(html):

'''

:param html: 整體的html界面

:return: 數(shù)據(jù)。title和price

'''

#把具體的str類型的文本辦成xpath可匹配的文本

xpath_content = etree.HTML(html)

#一個(gè)界面中的30條數(shù)據(jù)list

xpath_datas = xpath_content.xpath('//*[@class="info clear"]')

for data in xpath_datas:

try:

title = data.xpath('./div[1]/a/text()')

price = data.xpath('./div[6]/div/span/text()')

#list 是可以相加的python是強(qiáng)類型語(yǔ)言

#【titl,價(jià)格,每平方價(jià)格】

data = title + price

insert_mongo(data)

except:

#停止本次循環(huán)開(kāi)始下次循環(huán)

continue

def insert_mongo(data):

collection.insert_one({

'name':data[0],

'price':data[1]+'萬(wàn)'

})

#多個(gè)頁(yè)面數(shù)據(jù)下載

def main():

for i in range(1,10):

url = base_url.format(i)

html = load_page(url)

parse_html(html)

if __name__ == '__main__':

main()

有疑問(wèn)可以進(jìn)行評(píng)論~

總結(jié)

以上是生活随笔為你收集整理的python爬虫requests源码链家_Python爬虫之---爬链家的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。