1.使用pyinstaller包进行打包
安装:pip install pyinstaller
通过cmd传递参数主要通过:
sys.argv[1]代表第一个参数
sys.argv[2]代表第二个参数
例:
import requests
import sys
def getBaiduHtml(keyword):
url = 'https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=baidu&wd={0}'.format(keyword)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36',
}
response = requests.get(url=url,headers=headers)
return response.text[:2000]
if __name__ == "__main__":
f =getBaiduHtml(sys.argv[1])
print(f)
2.使用pyinstaller 进行打包:pyinstaller -F baidu.py
-F 打包参数
baidu.py 文件名
3.打包成功cmd进入dist文件夹下运行程序:baidu 参数1
import requests
import sys
import json
def getBaiduHtml(**kwargs):
"""
kwargs: 字典
参数:
method:post;get;默认为get
url:url;
timeout:超时时间默认5秒
post返回:Content-Type返回字段类型
params:get请求传参;键值对
data:post请求传参;键值对
test:get参数:{'method':'GET','url':'https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=baidu','params':{'wd':'北京'}}
test:post参数:{'method':'POST','url':'https://www.rjmart.cn/gaea/search','data':{'supplierName':'北京','pageSize':10000,'pageNo':1,'sort':0,'flag':20},'Content-Type':'application/json'}
"""
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36',
}
if kwargs.get('method','GET').upper() =='GET':
try:
response = requests.request(method=kwargs.get('method',''),url=kwargs.get('url',''),headers=headers,params=json.dumps(kwargs.get('params','')),timeout=kwargs.get('timeoout',5))
except Exception as e:
print(e)
else:
print(response.text[:2000])
else:
if kwargs.get('Content-Type')=='application/json':
try:
response = requests.request(method=kwargs.get('method',''),url=kwargs.get('url',''),headers=headers,json=kwargs.get('data',''),timeout=kwargs.get('timeoout',5))
except Exception as e:
print(e)
else:
print(response.text[:2000])
else:
try:
response = requests.request(method=kwargs.get('method',''),url=kwargs.get('url',''),headers=headers,data=kwargs.get('data',''),timeout=kwargs.get('timeoout',5))
except Exception as e:
print(e)
else:
print(response.text[:2000])
if __name__ == "__main__":
f = "{'method':'POST','url':'https://www.rjmart.cn/gaea/search','data':{'supplierName':'北京','pageSize':10000,'pageNo':1,'sort':0,'flag':20},'Content-Type':'application/json'}"
getBaiduHtml(**eval(f))
# getBaiduHtml(**eval(sys.argv[1]))