第一個python爬蟲小腳本

京東爬蟲小腳本

這兩天看了一下,沒想到這個小腳本的閱讀量挺高的,認真說,我覺得自己寫的這篇博客蠻粗糙的,因爲是第一篇嘛。爲了方便入門的同學儘早掌握爬蟲,這裏我得把這篇博客完善一下。寫爬蟲程序一定要會使用Google開發者工具,這個chrome瀏覽器自帶的,F12快捷鍵就直接出來了,然後選中network面板,再刷新頁面,network裏面就會對請求信息進行抓取;另外一種方式是安裝抓包工具,比如fiddler,不過要對瀏覽器進行配置,但fiddler功能非常強大,可以對電腦上的所有網絡請求信息進行抓取。爬蟲的關鍵是在於分析問題。

() 最近從Java開始轉python,因爲工作需求,需要做一些爬蟲的工作,所以看了一兩天的python語法就直接開幹了,學習python爬蟲直接從一些小例子開始,下面記錄一下,希望能對大家有一些參考意義。
爬取目標是京東上的手機信息
在這裏插入圖片描述
要爬取的手機信息的em元素
爬取的url鏈接和手機信息如上圖。廢話不多說,直接上代碼:

import requests
from bs4 import BeautifulSoup

url="https://list.jd.com/list.html?cat=9987,653,655"
html=requests.get(url)   #request的get 方法來獲取html
html.encoding="utf-8"   #設置編碼方式位utf-8,防止亂碼
# print(html.text)
soup=BeautifulSoup(html.text,"html.parser") #BeautifulSoup是一個網頁解析庫,利用它不用寫正則就可以實現網頁信息的抓取
# print(soup.select('.J_price'))
# print(soup.find_all('em')[35])
file = open('jngdong.txt','w+',encoding='utf-8')   #打開一個文件,w+:如果沒有,則創建文件;如果文件存在,則將其覆蓋並清空原有內容
#print(soup.select('.p-name em'))  #select css選擇器  class爲p-name 中的em子元素
for em in soup.select('.p-name em '):   #soup.select('.p-name em ')得到的是一個列表,遍歷它
    content = em.get_text()  #得到子元素的內容
    file.write(content+'\n')  #寫入文件並換行
file.close()  #關閉文件
print('爬蟲已完成')

註釋對代碼進行了詳細的解釋,所以也不在囉嗦了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章