中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python爬蟲實現抓取京東店鋪信息及下載圖片功能示例

發布時間:2020-09-18 01:14:01 來源:腳本之家 閱讀:188 作者:1443539042@qq.com 欄目:開發技術

本文實例講述了Python爬蟲實現抓取京東店鋪信息及下載圖片功能。分享給大家供大家參考,具體如下:

這個是抓取信息的

from bs4 import BeautifulSoup
import requests
url = 'https://list.tmall.com/search_product.htm?q=%CB%AE%BA%F8+%C9%D5%CB%AE&type=p&vmarket=&spm=875.7931836%2FA.a2227oh.d100&from=mallfp..pc_1_searchbutton'
response = requests.get(url)                          #解析網頁
soup = BeautifulSoup(response.text,'lxml')                   #.text將解析到的網頁可讀
storenames = soup.select('#J_ItemList > div > div > p.productTitle > a')    #選擇出商店的信息
prices = soup.select('#J_ItemList > div > div > p.productPrice > em')     #選擇出價格的信息
sales = soup.select('#J_ItemList > div > div > p.productStatus > span > em')  #選擇出銷售額的信息
for storename, price, sale in zip(storenames,prices,sales):
  storename = storename.get_text().strip()   #用get_text()方法篩選出標簽中的文本信息,由于篩選結果有換行符\n所以用strip()將換行符去掉
  price = price.get_text()
  sale = sale.get_text()
  print('商店名:%-40s價格:%-40s銷售額:%s'%(storename,price,sale))   #使打印出來的信息規范
  print('----------------------------------------------------------------------------------------------')

這個是下載圖片的

from bs4 import BeautifulSoup
import requests
import urllib.request
url = 'https://list.tmall.com/search_product.htm?q=%CB%AE%BA%F8+%C9%D5%CB%AE&type=p&vmarket=&spm=875.7931836%2FA.a2227oh.d100&from=mallfp..pc_1_searchbutton'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'lxml')
imgs = soup.select('#J_ItemList > div > div > div.productImg-wrap > a > img')
a = 1
for i in imgs:
  if(i.get('src')==None):
    break
  img = 'http:'+i.get('src') #這里廢了好長的時間,原來網站必須要有http:的
  #print(img)
  urllib.request.urlretrieve(img,'%s.jpg'%a, None,)
  a = a+1

ps:

1.選擇信息的時候用css

2.用get_text()方法篩選出標簽中的文本信息

3.striplstriprstrip的用法:

Python中的strip用于去除字符串的首尾字符;同理,lstrip用于去除左邊的字符;rstrip用于去除右邊的字符。

這三個函數都可傳入一個參數,指定要去除的首尾字符。

需要注意的是,傳入的是一個字符數組,編譯器去除兩端所有相應的字符,直到沒有匹配的字符,比如:

theString = 'saaaay yes no yaaaass'
print theString.strip('say')

theString依次被去除首尾在['s','a','y']數組內的字符,直到字符在不數組內。所以,輸出的結果為:

yes no

比較簡單吧,lstriprstrip原理是一樣的。

注意:當沒有傳入參數時,是默認去除首尾空格和換行符的。

theString = 'saaaay yes no yaaaass'
print theString.strip('say')
print theString.strip('say ') #say后面有空格
print theString.lstrip('say')
print theString.rstrip('say')

運行結果:

yes no
es no
yes no yaaaass
saaaay yes no

更多關于Python相關內容可查看本站專題:《Python Socket編程技巧總結》、《Python正則表達式用法總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

榆中县| 怀柔区| 松溪县| 腾冲县| 西盟| 隆安县| 隆昌县| 云浮市| 会昌县| 资讯| 芒康县| 淮安市| 普兰县| 开平市| 玉龙| 新余市| 桓仁| 饶阳县| 仁怀市| 绥宁县| 育儿| 安溪县| 洪湖市| 南岸区| 于田县| 南召县| 酉阳| 安国市| 台东市| 囊谦县| 库尔勒市| 岢岚县| 海盐县| 左权县| 雅安市| 城口县| 墨脱县| 胶南市| 兴宁市| 桐城市| 若尔盖县|