Heim  >  Artikel  >  Backend-Entwicklung  >  Python mehrfacher gleichzeitiger Zugriff auf die Website

Python mehrfacher gleichzeitiger Zugriff auf die Website

巴扎黑
巴扎黑Original
2017-08-07 17:26:571840Durchsuche

In diesem Artikel wird hauptsächlich die Funktion von Python zum Implementieren mehrerer gleichzeitiger Website-Zugriffe vorgestellt. Er analysiert die relevanten Betriebstechniken von Python-Threads in Kombination mit URL-Modulen für den gleichzeitigen Zugriff auf Websites anhand spezifischer Beispiele

Beschreibt, wie Python mehrere gleichzeitige Website-Zugriffsfunktionen implementiert. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:


# Filename:visitweb_threads.py
# Description:python visit web, get startTime, endTime, everytimes spentTime,threading
import threading
import urllib
import time
import datetime
print 'num    web       SpentTime'
def Process(url,n):
  minSpan = 0.0
  maxSpan = 0.0
  sumSpan= 0.0
  over1s = 0
  file = open('data.txt','a') # save Data
  for i in range(n):
    startTime =datetime.datetime.now()
    try:
      urlItem = urllib.urlopen(url)
      htmSource = urlItem.read()
      urlItem.close()
    except:
      pass
    endTime = datetime.datetime.now()
    span = (endTime-startTime).total_seconds()
    sumSpan = sumSpan + span
    if span < minSpan:
      minSpan = span
    if span > maxSpan:
      maxSpan = span
    if span>1:
      over1s=over1s + 1
    print(u&#39;%4d %s Spent:%7s seconds&#39;%(i,url,span))
    file.write(u&#39;%4d %s ST:%s ET:%s Spent :%s seconds\n&#39;%(i,url,startTime,endTime,span))
  file.write(&#39;\n&#39;)
  print(u&#39;\n requested:%s times\n Total Spent:%s seconds\n avg:%s seconds\n max:%s seconds\n min:%s seconds\n over 1 secnod:%s times\n&#39;%(n,sumSpan,sumSpan/n,maxSpan,minSpan,over1s))
  file.write(u&#39; requested:%s times\n Total Spent:%s seconds\n avg:%s seconds\n max:%s seconds\n min:%s seconds\n over 1 secnod:%s times\n&#39;%(n,sumSpan,sumSpan/n,maxSpan,minSpan,over1s))
  file.close()
class ThreadClass(threading.Thread):
  def run(self):
    now = datetime.datetime.now()
    print "%s says Hello World at time: %s" % (self.getName(), now)
    file = open(&#39;threads_data.txt&#39;,&#39;a&#39;) # save threads_data
    file.write( "%s says Hello World at time: %s\n" % (self.getName(), now))
    Process(&#39;http://222.20.6.184/main.aspx&#39;,10) # visit website 网站的Url和每个进程的访问次数
    now = datetime.datetime.now()
    print "%s says Goodbye at time: %s" % (self.getName(), now)
    file.write( "%s says Goodbye at time: %s\n" % (self.getName(), now))
    file.close()
if __name__==&#39;__main__&#39;:
#  file = open(&#39;threads_data.txt&#39;,&#39;w&#39;)
#  file.close()
#  file = open(&#39;data.txt&#39;,&#39;w&#39;)
#  file.close()
  for i in range(1000): # 多少次同时并发访问
    t = ThreadClass()
    t.start()

Das obige ist der detaillierte Inhalt vonPython mehrfacher gleichzeitiger Zugriff auf die Website. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn