답변:
CGI 또는 다른 서버 측 스크립트를 사용하여 여러 가지 방법으로이를 수행 할 수 있습니다. 한 가지 문제는 GPIO 핀에 대한 액세스 권한입니다. 깨끗한 해결책이없는 것 같습니다 . 현재 웹 서버를 실행하는 사용자에게 gpio 파일 을 숨기 거나 , 핀에 액세스 할 수있는 (suid) 프로그램을 호출 하거나, 메시지를 보낼 수있는 핀에 액세스 할 수있는 별도의 데몬 (신호, 파이프 )을 사용하는 것이 가장 쉽습니다. / socket, 기타 ipc ...).
"웹 인터페이스를 통해 파이썬 스크립트 실행"에 대해서는 web.py를 참조하십시오 . 아무 것도 할 수없는 단일 파일 독립형 "웹 서비스"를 작성할 수있는 매우 깔끔한 작은 모듈입니다. 이런 종류의 IME에 매우 편리합니다. 구성 또는 특수 소프트웨어가 필요하지 않습니다 (일반적인 python 설치 및 web.py 자체 제외). 파이썬에서 URL에 대한 핸들러를 작성하고 선택적으로 html 템플릿을 사용하여 실행하십시오. 올바른 포트에서 클라이언트 (브라우저, 다른 스크립트, wget ..)를 가리키면 작동합니다. :)
편집 : 새로운 프로젝트 발견, serpint 는 소켓 또는 가짜 문자 장치 인터페이스에서 gpio 를 흔들 수있는 것으로 보입니다.
웹 개발로 시작하는 경우 Bottle을 살펴보십시오 . 병은 단일 파일 내에서 완전한 웹 프레임 워크라는 점에서 플라스크보다 간단합니다. 반면, Flask는 다른 라이브러리의 사운드 코드를 재사용하는 것을 목표로하므로보다 견고하지만 복잡 할 수 있습니다.
병이있는 Hello World는 다음과 같습니다.
from bottle import route, run, template
@route('/hello/:name')
def index(name='World'):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
다음과 같이 실행하십시오.
python HelloBottle.py
그리고 브라우저에서 엽니 다 : http://localhost:8080/hello/world
설정 다른 컴퓨터에서 웹 사이트를 사용할 수 있도록하는 방법 host
에 0.0.0.0
에 run
방법. 위의 Hello World의 마지막 줄은 다음과 같아야합니다.
run(host='0.0.0.0', port=8080)
이제 다음과 같이 Pi의 IP 주소를 통해 웹 사이트에 액세스 할 수 있습니다. http://192.168.0.123:8080/hello/world
자세한 내용 은 배포 관련 병 설명서를 참조 하십시오.
curl http://localhost:8080/hello/world
하면 예상 결과가 나타납니다. 그러나 LAN을 통해 일반 컴퓨터에서 액세스 할 수 있기를 원합니다. ifconfig
내 IP 주소로 사용한 후 일반 컴퓨터의 다음 URL에서 연결을 설정할 수 없습니다 http://192.168.1.102:8080/hello/matthew
. ` 192.168.1.102/home.php ' 에서 만든 다른 웹 페이지에 액세스 할 수 있습니다 . 내 병 페이지에 어떻게 할 수 있는지 알고 싶습니까?
rpi#> sudo apt-get install ipython-notebook ipython3-notebook
그런 다음 실행하십시오.
rpi#> ipython notebook
참고 : PC에서도 액세스 할 수 있습니다.
rpi #> ipython notebook --ip = 10.0.0.7
# here 10.0.0.7 은 내 RPi IP입니다.
# 브라우저의 다른 컴퓨터에서 다음을 입력합니다 :
http://10.0.0.7:8888
당신은 이것을 볼 것입니다 :
그런 다음 새 노트북을 만들고 거기에서 코드를 실행하십시오.
방법 시험 :
http://ipython.org/
http://jupyter.org/
https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/
http://maxembedded.com/2014/07/ 라즈베리 파이 -gpio- 파이썬 사용하기 /
유튜브 : https://www.youtube.com/watch?v=cJuF4IDMuLY
음악은 mps-youtube를 통해 Linux 화면 프로그램의 백그라운드에서 RPi에서 실행됩니다.
rpi#> sudo apt-get install python3-pip
rpi#> sudo pip3 install --upgrade mps-youtube
rpi#> sudo pip3 install --upgrade https://github.com/mps-youtube/pafy/archive/develop.zip
rpi#> mpsyt # to start it
# configure mpsyt to show video, player.
mpsyt#> set show_video True
mpsyt#> set player omxplayer
mpsyt#> set search_music False
mpsyt#> . lindsey stirling
mpsyt#> 2 # to play song from a list.
행운을 빕니다!
https://roderickvella.wordpress.com/2017/01/04/control-a-separate-running-script-from-a-web-server-python-rpi/ 방법은 다음과 같습니다.