一、服務器版本
Centos7以上版本
二、配置python環境
1、安裝依賴包
yum -y install gcc gcc-c++
yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
2、下載anaconda
下載anaconda安裝包命令如下:
$ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.0.1-Linux-x86_64.sh
安裝過程可參考:https://blog.csdn.net/zhaoyoulin2016/article/details/80776198
- 首先通過xftp將下載好的Anaconda3_linux源文件放到/usr/local文件夾內;
- cd /usr/local 執行如下代碼:bash Anaconda3-5.2.0-Linux-x86_64.sh
- 根據提示輸入ENTER
如果報錯如下:
Anaconda3安裝過程中遇到“Anaconda3-5.1.0-Linux-x86_64.sh:行350: bunzip2: 未找到命令 tar: 它似乎不像是一個 tar 歸檔文件 tar: 由於前次錯誤,將以上次的錯誤狀態退出”
Anaconda3-5.1.0-Linux-x86_64.sh:行350: bunzip2: 未找到命令 tar: 它似乎不像是一個 tar 歸檔文件 tar: 由於前次錯誤,將以上次的錯誤狀態退出
解決辦法:
安裝bzip2即可解決
yum install -y bzip2
- 輸入yes
- 安裝完後增加環境變量
vim /root/.bashrc
# added by Anaconda3 4.4.0 installer
export PATH="/root/anaconda3/bin:$PATH"
- 重啓環境變量配置
source /root/.bashrc
- 安裝完成之後,命令行輸入python,查看python版本是否是3.6,如果是則安裝成功。如下。
3、安裝所需要的python包
涉及到如下的python庫:
環境 |
版本 |
Python |
Python3.6 版本 |
re |
Python自帶(2.2.1) |
time |
Python自帶 |
warnings |
Python自帶 |
2.7.7 |
|
requests |
2.18.4 |
pandas |
0.23.4 |
BeautifulSoup |
4.6.3 |
impala |
0.14.1 |
python-Levenshtein(Levenshtein) |
0.12.0 |
selenium |
3.141.0 |
zhconv |
|
3.1、首先安裝python庫
使用pip安裝。
pip install --upgrade pip
pip install beautifulsoup4
pip install selenium
pip install psycopg2
pip install requests
pip install pandas
pip install Levenshtein
pip install zhconv
導入安裝的python庫,並測試psycopg2是否可以連接數據庫,使用本地的一個數據庫進行測試。測試代碼如下。
import requests
import re
import pandas as pd
from bs4 import BeautifulSoup
import selenium
import psycopg2
import Levenshtein
import zhconv
conn = psycopg2.connect(database="zjsm", user="postgres", password="root", host="192.168.0.12", port="5432")
3.2、impala的安裝
由於本項目的數據需要與hive數據庫連接,故安裝impala庫。先下載所需的安裝包。
pip install pure_sasl==0.5.1
pip install thrift==0.9.3
pip install bitarray==0.8.3
pip install thrift_sasl==0.2.1
pip install thriftpy==0.3.9
pip install impyla==0.14.1
若出現問題,可參考https://blog.csdn.net/wx0628/article/details/86550582
測試是否安裝成功,可以嘗試連接一個本地的hive。測試代碼如下。
from impala.dbapi import connect
from impala.util import as_pandas
conn = connect(host='192.168.111.87', port=10000, auth_mechanism='PLAIN', user='root', password='3.1415926', database='zjsm')
3.3、谷歌瀏覽器以及對應的驅動安裝:chromedriver.exe
安裝谷歌瀏覽器,這裏使用文件夾裏提供的版本google-chrome-stable_current_x86_64.rpm,只需要將該軟件包上傳到服務器然後使用如下命令安裝:yum localinstall google-chrome-stable_current_x86_64.rpm。
將文件夾裏提供的chromedriver上傳到服務器,可以放到用戶目錄下,比如/root/anaconda3目錄,然後設置權限,輸入命令:chmod 777 chromedriver。
可以將search_url,即https://so.youku.com/search_video/q_少帥放到瀏覽器搜索,查看是不是少帥,然後將代碼最終輸出的https://list.youku.com/show/id_z2a6634cea23d11e5b692.html連接使用瀏覽器測試是不是期望的結果。測試代碼如下。
from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
driver = webdriver.Chrome(executable_path="/root/chromedriver",chrome_options=options)
search_url='https://so.youku.com/search_video/q_少帥'
driver.get(search_url)
html = driver.page_source
soup = BeautifulSoup(html, 'lxml')
url=soup.select('.row-ellipsis a')[0].get('href')
print(url)#得到:https://list.youku.com/show/id_z2a6634cea23d11e5b692.html
文章未經博主同意,禁止轉載!