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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

爬取京东商品分类和链接

發(fā)布時(shí)間:2024/4/17 编程问答 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爬取京东商品分类和链接 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近因?yàn)楣ぷ鞅容^忙也沒有更新隨筆。昨天下班因?yàn)樯眢w不舒服,代碼也沒有碼多少。說(shuō)碼代碼也還算不上,畢竟是自己無(wú)聊寫點(diǎn)小腳本自?shī)首詷贰?/span>

今天這篇主要的知識(shí)點(diǎn)是使用Python的BeautifulSoup進(jìn)行多層的遍歷。

筆者閑來(lái)無(wú)事寫了個(gè)小爬蟲,主要是爬取京東商品分類以及對(duì)應(yīng)的連接

如圖所示。只是一個(gè)簡(jiǎn)單的哈,不是爬取里面的隱藏的東西。

from bs4 import BeautifulSoup as bs
import requests
headers = {
"host": "www.jd.com",
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36 Core/1.47.933.400 QQBrowser/9.4.8699.400",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
}
session = requests.session()
def get_url():
renspned = bs(session.get('http://www.jd.com/',headers = headers).text,'html.parser')
for i in renspned.find("div", {"class": "dd-inner"}).find_all("a",{"target":"_blank"}):
print(i.get_text(),':',i.get('href'))
get_url()

運(yùn)行這段代碼以及達(dá)到了我們的目的。

我們來(lái)解讀一下這段代碼。
首先我們要訪問到京東的首頁(yè)。
然后通過(guò)BeautifulSoup對(duì)訪問到的首頁(yè)進(jìn)行解析。
這個(gè)時(shí)候,我們就要定位元素,來(lái)獲取我們需要的東西了。
在瀏覽器中通過(guò)F12,我們可以看到下圖所示的東西:

我們來(lái)看看下面這句代碼:

for i in renspned.find("div", {"class": "dd-inner"}).find_all("a",{"target":"_blank"})
這一行代碼完全滿足我們的需求,首先用find方法,定位到了class=“dd-inner”的div,然后使用find_all對(duì)該標(biāo)簽下所有的a標(biāo)簽。
最后,我想打印出所有的商品分類以及對(duì)應(yīng)的鏈接,于是,我使用了i.
get_text()i.get('href')的方法終于獲取到了商品分類和對(duì)應(yīng)的鏈接。

其實(shí)不是很難,主要是要用對(duì)方法。筆者因?yàn)槭浅鯇W(xué)方法沒有用對(duì)。花了差不多兩天時(shí)間才搞定。這里也是告訴大家,可以使用find().find_all()的方法進(jìn)行多層的遍歷。

轉(zhuǎn)載于:https://www.cnblogs.com/rookie-c/p/5808817.html

總結(jié)

以上是生活随笔為你收集整理的爬取京东商品分类和链接的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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