學習資料
import requests
if __name__ == '__main__':
#step1:指定url
url='https://www.sogou.com/'
#step2:發起請求
#get方法會返回一個響應物件
res=requests.get(url=url)
#step3:獲取相應資料.text返回的是以字串形式的
page=res.text
print(page)
#step4:持久化儲存
with open('./sogou.html','w',encoding='utf-8')as fp:
fp.write(page)
print("爬取資料結束")
簡單的網頁採集器 搜尋引擎
import requests
if __name__ == '__main__':
url='https://www.sogou.com/sie?'
#處理url攜帶的引數:封裝到字典中
kw=input('enter a word:')
param={
'query':kw
}
#對指定url發起的請求是攜帶引數的url是攜帶引數的
res=requests.get(url=url,params=param)
passs=res.text
print(passs)
fileName=kw+'.html'
with open(fileName,'w',encoding='utf-8') as fp:
fp.write(passs.text)
print(fileName,'儲存成功!!!!')
ps:輸入空姐,則在網頁中搜尋空姐
搞定百度翻譯
ajax 前端區域性重新整理
百度翻譯,是post請求攜帶的引數
響應的是json資料
post請求要攜帶引數
json資料
import requests
import json
if __name__ == '__main__':
#指定url連結
post_url='https://fanyi.baidu.com/sug'
#post請求引數處理(同get請求一致)
data={
'kw':'dog'
}
# 偽裝一下瀏覽器
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0'}
#請求傳送
res=requests.post(url=post_url,data=data,headers=headers)
#獲取響應資料:json()方法返回一個obj(物件)(如果確認響應資料是json型別的,才可以使用JSON)
dic_obj=res.json()
print(dic_obj)
#持久化儲存
fp=open('./dog.json','w',encoding='utf-8')
json.dump(dic_obj,fp=fp,ensure_ascii=False)#設定不存在字元模式
ps.可以自定義一個輸入函式
爬取豆瓣電影中的詳細資料
網址:https://movie.douban.com/j/chart/top_list?type=24&interval_id=100%3A90&action=&start=100&limit=20
因為是json非同步載入資料
import requests
import json
if __name__ == '__main__':
url='https://movie.douban.com/j/chart/top_list'
param={
"type": "24",
"interval_id": "100:90",
"action": "",
"start": "1",#從庫中的第幾部電影去取
"limit": "20",#一次取出的個數
}
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0'}
req=requests.get(url=url,params=param,headers=headers)
li_data=req.json()#json返回一個列表
fp=open('./douban.json','w',encoding='utf-8')
json.dump(li_data,fp=fp,ensure_ascii=False)#避免出現字元型資料
print('over!!!')
練習肯德基餐廳查詢
import requests
if __name__ == '__main__':
url='http://www.kfc.com.cn/kfccda/storelist/index.aspx'
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0'}
param={
"keyword": "青島",
"pageIndex": "1",
"pageSize": "10",
}
response=requests.get(url=url,params=param,headers=headers)
list_data=response.text
print(list_data)
爬取化妝品管理資訊平臺url=http://scxk.nmpa.gov.cn:81/xk/
因為網頁中有很多連結,每一個id代表一個公司的詳細資料所以要訪問每一個連結
先把所有的id列印出來
import requests
import json
if __name__ == '__main__':
#批量獲取不同企業的id值
url='http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsList'
#引數的封裝
data={"on":"true",
"page":"1",
"pageSize":"15",
"productName":"",
"conditionType":"1",
"applyname":"",
"applysn":"",}
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0'}
id_list = [] # 儲存企業的id
json_ids=requests.post(url=url,headers=headers,data=data).json()
for dic in json_ids['list']:
id_list.append(dic['ID'])#append字典的新增
#獲取企業詳情資料
post_url='http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsById'
for id in id_list:
data={
'id':id
}
data_json=requests.post(url=post_url,data=data,headers=headers).json()
print(data_json,'----------------------------')
相關文章
- 大資料學習資料大資料
- Go學習【二】學習資料Go
- 大資料學習大資料
- Python 學習資料Python
- Angular學習資料Angular
- hibernate學習資料
- gis 資料學習
- 資料科學、資料工程學習路線資料科學
- 大資料如何學習,大資料工程師學習經驗分享大資料工程師
- ROS學習資料大全ROS
- Java 學習資料集合Java
- Swift UI 學習資料SwiftUI
- 大資料學習:物件大資料物件
- Go 學習資料整理Go
- 資料結構學習資料結構
- 大資料學習02大資料
- 學習MongoDB資料庫MongoDB資料庫
- 想學習大資料?這才是完整的大資料學習體系大資料
- 大資料學習|小白學習大資料需要滿足這六個條件你就能學好大資料大資料
- 學習大資料需要掌握的知識,需要學習的資料技術大資料
- 大資料學習:怎樣進行大資料的入門級學習?大資料
- 做資料分析需要學習機器學習嗎?機器學習
- 資料庫學習(二)資料操作語言:資料庫
- 資料庫學習筆記資料庫筆記
- 13、資料,學習和建模
- NLP系列學習:資料平滑
- 機器學習-資料清洗機器學習
- 資料結構學習心得資料結構
- 大資料學習目錄大資料
- TensorFlow學習資料彙總
- APEX學習資料參考
- 區塊鏈學習資料區塊鏈
- 大資料學習:閉包大資料
- 大資料學習:抽象類大資料抽象
- 資料分析-學習篇-01
- 機器學習 大資料機器學習大資料
- Spark學習——資料傾斜Spark
- Flask學習之旅--資料庫Flask資料庫