auf einer Webseite wird wöchentlich zu einer bestimmten Zeit eine neue Datei hochgeladen. Die direkte download-URL ist nur über Umwege zu ermitteln, da PHP code die URL anonymisiert.
Um die Download-URL zu ermitteln sind mehrere Schritte notwendig, welche später automatisiert per Script ausgeführt werden sollen:
z.B. http://site.com/liste
Hier findet man im Quellcode etwas wie:
Code: Alles auswählen
<tr class="mediaitem" onclick="window.location.href = '/datei/20'"> #Die Zahl wird wöchentlich hochgezählt
http://site.com/liste/20
Von hier aus erreicht man die nächste Seite mit einem iFrame:
Code: Alles auswählen
<div align="center"><div id="embed">
<iframe width="735" height="414" src="http://www.nocheineseite.com/bla.html" frameborder="0" scrolling="no" allowfullscreen></iframe>
</div>
file: 'https://bliblablu,com/video.mp4',
Diese soll heruntergeladen und umbenannt werden: <File>_Nummer.mp4
Das mehrfache browsing macht mir genauso zu schaffen wie das suchen der Strings.
Hier ist mein erster Ansatz, damit finde ich erstmal nur die Strings innerhalb der <tr></tr> HTML tags :
Code: Alles auswählen
from BeautifulSoup import BeautifulSoup
import urllib2
import re
from urllib import FancyURLopener
class MyOpener(FancyURLopener):
version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11'
mopen = MyOpener()
def getLinks(url):
pageFile = mopen.open(url)
pageHtml = pageFile.read()
pageFile.close()
soup = BeautifulSoup("".join(pageHtml))
#sAll = soup.findAll("li")
sAll = soup.findAll("tr", attrs = {'class': 'mediaitem'})
for href in sAll:
print href
print( getLinks("http://site.com/liste") )
VG
PeacePipe