Dbs 2021-2022 : Différence entre versions

De Design numérique
Aller à : navigation, rechercher
(ajout diagram)
Ligne 1 : Ligne 1 :
 
== Sessions ==
 
== Sessions ==
 +
=== 25/2 ===
 +
<syntaxhighlight lang="python">
 +
#1. pour faire des requêtes http
 +
import mechanize
 +
#2. transformer la réponse en structure html navigable
 +
import lxml.html
 +
#3. sélectionner les données qui nous intéressent avec un sélecteur css
 +
import cssselect
 +
 +
#https://www.meteo.be/fr/belgique
 +
 +
 +
 +
browser = mechanize.Browser()
 +
 +
browser.addheaders = [('User-agent', 'Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0')]
 +
 +
browser.set_handle_robots(False)
 +
 +
data = browser.open('https://www.meteo.be/fr/belgique', timeout=10)
 +
 +
 +
#print(data.read())
 +
 +
source = data.read()
 +
 +
html = lxml.html.fromstring(source)
 +
 +
#.now-cast-pp__description
 +
 +
selecteurs = cssselect.parse('now-cast')
 +
#selecteurs = [objet cssselect]
 +
 +
selecteur = selecteurs[0]
 +
 +
chemin_xpath = cssselect.HTMLTranslator().selector_to_xpath(selecteur)
 +
 +
resultats = html.xpath(chemin_xpath)
 +
 +
#print(resultats)
 +
for resultat in resultats:
 +
    print(resultat.get('title'))
 +
    print(resultat.text_content())
 +
</syntaxhighlight>
 +
  
 
=== 11/2 ===
 
=== 11/2 ===

Version du 25 février 2022 à 15:34

Sessions

25/2

#1. pour faire des requêtes http
import mechanize
#2. transformer la réponse en structure html navigable
import lxml.html
#3. sélectionner les données qui nous intéressent avec un sélecteur css
import cssselect

#https://www.meteo.be/fr/belgique



browser = mechanize.Browser()

browser.addheaders = [('User-agent', 'Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0')]

browser.set_handle_robots(False)

data = browser.open('https://www.meteo.be/fr/belgique', timeout=10)


#print(data.read())

source = data.read()

html = lxml.html.fromstring(source)

#.now-cast-pp__description

selecteurs = cssselect.parse('now-cast')
#selecteurs = [objet cssselect]

selecteur = selecteurs[0]

chemin_xpath = cssselect.HTMLTranslator().selector_to_xpath(selecteur)

resultats = html.xpath(chemin_xpath)

#print(resultats)
for resultat in resultats:
    print(resultat.get('title'))
    print(resultat.text_content())


11/2

Description des différentes relations entre les serveurs sur le web:

Serveur-web.jpg


Server web.png

Objectif

Les bases de données peuvent se révéler des outils particulièrement intéressant en terme de recherche en design et en art. L'objectif de ce module est d'approcher les bases de données relationnelles, de comprendre leurs spécificités et de développer une structure propre à chaque recherche.

Projet

Il est question pour ce module de définir un terrain de recherche pour ensuite créer une base de données à partir d'une collection de documents. Les "documents" en question peuvent être de multiples natures; interviews, articles, livres, vidéos, sons, images, etc.

Cette recherche peut se faire entièrement ou en partie sur le web, elle peut impliquer des rencontres, des interviews, des prises de vue, etc. Pour la définir, partez d'une situation qui vous intéresse, vous interpelle, la moins générale possible.

Nous allons aborder le modèle de bases de données relationnel. Il ne vous est pas demandé d'utiliser une implémentation spécifique de ce modèle (vous pourriez même créer une base de données entièrement physique) mais d'utiliser les concepts propres au modèle.

Références

Mark Lombardi

Forensic architecture

Mari Bastashevski

A/R

Programming is forgetting