黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

python爬蟲(5)——BeautifulSoup & docker基礎(chǔ)

系統(tǒng) 1880 0

BeautifulSoup基礎(chǔ)實戰(zhàn)

安裝:pip install beautifulsoup4

常用指令:

          
            from bs4 import BeautifulSoup as bs
import urllib.request
data=urllib.request.urlopen("https://www.cnblogs.com/mcq1999/").read().decode("utf-8","ignore")
bs1=bs(data)
print(bs1.prettify()) #格式化輸出
print(bs1.title) #獲取標(biāo)簽title,bs對象.標(biāo)簽名
print(bs1.title.string) #獲取標(biāo)簽title的文字
print(bs1.title.name) #獲取標(biāo)簽名,如title
print(bs1.a.attrs) #獲取屬性列表 鍵值對
print(bs1.a['name']) #獲取某個屬性對應(yīng)的值
print(bs1.find_all('a')) #提取所有某個節(jié)點的內(nèi)容,傳參是標(biāo)簽名
print('---------------------------------')
print(bs1.find_all(['a','ul']))
k1=bs1.ul.contents #提取當(dāng)前節(jié)點的所有子節(jié)點,返回一個列表
k2=bs1.ul.children #返回一個生成器
allulc=[i for i in k2]
          
        

PhantomJS基礎(chǔ)實戰(zhàn)

效率不高,但可以解決很多反爬問題,本質(zhì)是一個無界面的瀏覽器,通過命令行(或python)操縱。通常難點部分通過PhantomJS寫,然后將數(shù)據(jù)交給urllib或scrapy進行后續(xù)處理。

目前已PhantomJS和selenium分手,以后再學(xué)。

分布式爬蟲之docker基礎(chǔ)

鏡像:不可以改變內(nèi)容

容器:可以改變內(nèi)容,相當(dāng)于虛擬機,默認(rèn)情況下彼此封閉

優(yōu)點:輕部署、省成本、部署遷移方便

安裝:yum -y install docker

啟動和關(guān)閉:

systemctl start docker

systemctl stop docker

啟動時如果出現(xiàn)

可以參考下面這篇博客,我的就這樣成功了,其他的方法都沒用

https://blog.csdn.net/w1316022737/article/details/83692701

最好再修改一下docker的鏡像源,不然運行的很慢:

https://blog.csdn.net/julien71/article/details/79760919

查看已有鏡像:docker images

下載鏡像:docker pull

創(chuàng)建容器:docker run -tid

查看容器:docker ps -a

python爬蟲(5)——BeautifulSoup & docker基礎(chǔ)_第1張圖片

進入容器:docker attach

python爬蟲(5)——BeautifulSoup & docker基礎(chǔ)_第2張圖片

退出容器:一般不用exit,因為會停止容器。我們用ctrl+p+q即可。

在容器里的操作不會影響本機,相當(dāng)于在虛擬機里再開了個虛擬機

啟動容器:docker start …

封裝容器成鏡像:docker commit 2d6 mytest:v1

基于鏡像給容器起名字: docker run -tid --name testabc a2a (基于a2a這個鏡像創(chuàng)建一個名為testabs的容器)

docker run -tid --name h1 mytest:v1

docker run -tid --name h2 --link h1 mytest:v1 (將容器h2鏈接到h1,即讓h2和h1通信)

這里我用ubuntu的鏡像發(fā)現(xiàn)ping、yum等等命令都沒有,所以改用了centos的鏡像。

[root@hadoop106 mcq]# docker attach fe3
[root@fe3489945006 /]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.6 c1 4c3dab0e013c
172.17.0.7 fe3489945006
[root@fe3489945006 /]# ping 172.17.0.6

將docker鏡像封裝為文件:docker save -o /mytest.tar c3e8


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論