一、整理安裝需要文件
- JDK運(yùn)行安裝包
- Python安裝環(huán)境包(包括所用到的庫(kù)文件)
不一定要指定版本
-
Mysql安裝環(huán)境包
不一定要指定版本
在這里插入圖片描述 -
winserver2008r2系統(tǒng)相關(guān)補(bǔ)丁
在這里插入圖片描述
第二行exe程序?yàn)?,windows sp1升級(jí)包
谷歌瀏覽器安裝包
-
office2007需要安裝插件,2010以上不需要
在這里插入圖片描述
二、安裝過(guò)程
1.升級(jí)安裝sp1 安裝包,如果已升級(jí)過(guò)就不用升級(jí)
下載地址:(http://www.ysiis.com/info/411)
2.安裝VC_redist.x64 2015.exe
3.安裝Windows6.1-KB2533623-x64補(bǔ)丁包,Windows6.1-KB2999226-x64補(bǔ)丁包
4.把msvcr120.dll、msvcp120.dll放置在C盤/windows/system32文件夾中
備注:如果系統(tǒng)報(bào)錯(cuò)缺少什么dll文件,可以去這個(gè)地址搜索
(https://cn.dll-files.com/msvcp120.dll.html)
5.安裝完成重啟電腦
6.安裝JDK并配置環(huán)境變量,訪問(wèn)以下地址,或查看安裝目錄截圖
(https://blog.csdn.net/huaicainiao/article/details/79340572?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161629569916780261986813%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=161629569916780261986813&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-1-79340572.first_rank_v2_pc_rank_v29&utm_term=jdk)、
7.安裝Mysql配置環(huán)境變量,修改密碼,訪問(wèn)以下地址,或查看安裝目錄截圖
(https://blog.csdn.net/weixin_40396510/article/details/79277731)
8.安裝python環(huán)境和安裝庫(kù)
(1)以管理員方式安裝,python運(yùn)行安裝包,推薦一步一步安裝,注意選擇自動(dòng)添加環(huán)境變量。不然后面手動(dòng)加很麻煩。
(2)安裝pandas、mysqlclient、pywin32類庫(kù),主要講解,pandas
繼續(xù)安裝xlrd-1.2.0-py2.py3-none-any.whl,安裝過(guò)程中,完成后如果報(bào)錯(cuò),就換一個(gè)pandas版本繼續(xù)嘗試。
9.安裝完成后,先使用cmd執(zhí)行python腳本看是否報(bào)錯(cuò)。
10.安裝谷歌瀏覽器安裝包
11.安裝office安裝包,注意如果是2007以下的office需要安裝saveaspdfandxps.exe
安裝office參考下面網(wǎng)址:(http://www.downcc.com/soft/4043.html)序列號(hào)和安裝包網(wǎng)站里都有。
二.JAVA 調(diào)用 Python
真的是被搞吐血了,java調(diào)用python、
之所以被卡很久才解決,首先你需要把你的python腳本在windows命令行
執(zhí)行一次如果成功再做后面的操作
如果不成功報(bào)錯(cuò)顯示(第三方庫(kù)沒找到,具體代碼是什么no module not found)
出現(xiàn)這一步,你需要在命令行輸入一下代碼
(需要注意的是,python腳本和java調(diào)用的地方必須全部使用絕對(duì)路徑)?。。?/p>
pip list
查看是否有包,如果有,找到那個(gè)包所在的文件夾
輸入以下的代碼
python//回車
import sys//回車
sys.path//然后查看你自己庫(kù)所在的目錄是否在這些目錄中
這些目錄是python自動(dòng)找包的地方
如果不存在,你需要在系統(tǒng)的環(huán)境變量里的系統(tǒng)變量那里添加
PYTHONPATH變量然后把你包所在的文件夾目錄拷進(jìn)去(類似配置java環(huán)境變量)
重復(fù)以上步驟看是否有這個(gè)目錄
然后再用命令行執(zhí)行腳本看是否能執(zhí)行
成功執(zhí)行以后嘗試java調(diào)用執(zhí)行
- python代碼(調(diào)用了第三方操作mysql的庫(kù))
import MySQLdb
if __name__ == '__main__':
db = MySQLdb.connect(
host="localhost",
user="root",
passwd="123456",
charset='utf8',
db="jianda")
cur = db.cursor()
print("success")
- Java代碼
@Test
public String pyfileUpload() {
String result = "";
try {
//這個(gè)方法是類似隱形開啟了命令執(zhí)行器,輸入指令執(zhí)行python腳本
Process process = Runtime.getRuntime()
.exec("python解釋器位置(這里一定要用python解釋器所在位置不要用python這個(gè)指令)+ python腳本所在路徑(一定絕對(duì)路徑)");
//這種方式獲取返回值的方式是需要用python打印輸出,然后java去獲取命令行的輸出,在java返回
InputStreamReader ir = new InputStreamReader(process.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
result = input.readLine();//中文的話這里可能會(huì)有亂碼,可以嘗試轉(zhuǎn)一下不過(guò)問(wèn)題不大
// result1 = new String(result.getBytes("iso8859-1"),"utf-8");
input.close();
ir.close();
int re = process.waitFor();
System.out.println(result);
} catch (IOException | InterruptedException e) {
System.out.println("調(diào)用python腳本并讀取結(jié)果時(shí)出錯(cuò):" + e.getMessage());
}
return result;
}
瀏覽器返回結(jié)果

至此完全成功,真的搞吐血了


