Merge HO36 data collection branch
119
PROMPTS/session-a-ho36.md
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
# SESSION A PROMPT — HO36 Data Collection (Codex)
|
||||
|
||||
Copy/paste this entire prompt into your **Session A** Codex window.
|
||||
|
||||
---
|
||||
|
||||
```markdown
|
||||
You are a competitive-intel researcher collecting **public, no-login** online footprint data for **HO36 Lyon**. You are working in parallel with Session B (Flâneur) and Session C (discovery helper). Your job is to gather the **highest-signal numbers + URLs + screenshots** so we can explain why **HO36 was likely full around NYE** while Flâneur had availability.
|
||||
|
||||
## Non‑Negotiables (do not stall)
|
||||
- Public pages only. **No login**, no captcha solving, no bypassing anti-bot.
|
||||
- If blocked, **record `status: blocked`** with URL + screenshot and move on.
|
||||
- Be “insistent”: timebox each source to **10 minutes**, then move on.
|
||||
- Always capture evidence: URL + timestamp + screenshot path.
|
||||
- Use the repo’s schema exactly (`SCHEMA.md`).
|
||||
|
||||
## Start Here (Git coordination)
|
||||
1) Read Forgejo details from `~/readme.md`
|
||||
2) Clone + branch:
|
||||
```bash
|
||||
cd ~/
|
||||
git clone https://git.infrafabric.io/danny/flaneur flaneur-analysis
|
||||
cd flaneur-analysis
|
||||
git checkout -b data/ho36
|
||||
mkdir -p data/ho36/{screenshots,raw}
|
||||
```
|
||||
|
||||
## Output contract (must match)
|
||||
Write:
|
||||
- `data/ho36/evidence.json`
|
||||
- `data/ho36/evidence.csv` (generated via `tools/json_to_csv.py`)
|
||||
- `data/ho36/profile.md`
|
||||
|
||||
Evidence rows go into `evidence.json` under `evidence[]` following `SCHEMA.md`.
|
||||
|
||||
### Important: Use the repo helpers
|
||||
Capture pages with:
|
||||
```bash
|
||||
/root/venv/bin/python tools/capture_page.py --url "<URL>" \
|
||||
--screenshot "data/ho36/screenshots/<name>__YYYYMMDD.png" \
|
||||
--html "data/ho36/raw/<name>__YYYYMMDD.html" \
|
||||
--wait-ms 2000
|
||||
```
|
||||
Convert JSON→CSV:
|
||||
```bash
|
||||
python3 tools/json_to_csv.py --json data/ho36/evidence.json --csv data/ho36/evidence.csv
|
||||
```
|
||||
|
||||
## Priority order (highest signal first)
|
||||
|
||||
### 1) Official site (HO36 Lyon)
|
||||
Target: https://ho36lyon.com/
|
||||
Collect:
|
||||
- tagline/hero copy (exact quotes)
|
||||
- booking engine domain (e.g. Mews/RoomRaccoon/etc.)
|
||||
- languages visible
|
||||
- inventory/price claims (if stated)
|
||||
- any NYE/seasonal policy hints (min nights, sold out banners) — if none, record `unknown`
|
||||
Capture: homepage + any booking/rooms page you can access.
|
||||
|
||||
### 2) Google Maps (must get rating + review count)
|
||||
Goal: rating + review count.
|
||||
|
||||
If the full Maps UI hides review count, use the **embed iframe technique**:
|
||||
- Find an embed URL (often on official site as `google.com/maps/embed?pb=...`), OR use
|
||||
`https://www.google.com/maps?q=HO36+Hostel+Lyon&output=embed`
|
||||
- IMPORTANT: the embed must be loaded inside an iframe.
|
||||
Create a local file:
|
||||
```bash
|
||||
cat > /root/tmp/ho36_maps_iframe.html <<'EOF'
|
||||
<!doctype html><html><body style="margin:0">
|
||||
<iframe id="map" width="800" height="600" src="PASTE_EMBED_URL_HERE"></iframe>
|
||||
</body></html>
|
||||
EOF
|
||||
```
|
||||
Then use Playwright to screenshot and read the iframe body text (look for “#### avis”).
|
||||
Record `google_maps.rating` and `google_maps.review_count`.
|
||||
|
||||
### 3) Hostelworld (must get listing URL + rating + review count)
|
||||
Try the Lyon directory page first (works better than search):
|
||||
- https://www.hostelworld.com/hostels/europe/france/lyon/
|
||||
Find HO36, then capture its listing page.
|
||||
Extract:
|
||||
- listing URL
|
||||
- rating
|
||||
- review count
|
||||
- optional: position on Lyon directory page (note sorting caveat)
|
||||
|
||||
### 4) Booking.com (attempt; likely blocked)
|
||||
Attempt:
|
||||
- Find HO36 listing URL (Session C might provide it).
|
||||
- Capture the listing URL directly.
|
||||
If you hit WAF/challenge, record `status: blocked` and keep going.
|
||||
Do **not** try to bypass.
|
||||
|
||||
### 5) TripAdvisor (attempt; often blocked)
|
||||
Attempt listing page. If DataDome/captcha, record blocked.
|
||||
|
||||
### 6) Socials
|
||||
Instagram + Facebook (and TikTok if present):
|
||||
- Try to capture follower/like counts from public OG/meta if the UI blocks.
|
||||
- Record `blocked` if login wall prevents reading anything meaningful.
|
||||
|
||||
## Git workflow (after each major source)
|
||||
```bash
|
||||
git add data/ho36/
|
||||
git commit -m "HO36: completed <source>"
|
||||
git push origin data/ho36
|
||||
```
|
||||
|
||||
## Success criteria (minimum viable)
|
||||
- Official site captured + booking engine identified
|
||||
- Google Maps rating + review_count captured (embed iframe OK)
|
||||
- Hostelworld listing URL + rating + review_count captured
|
||||
- Booking.com + TripAdvisor attempted and marked ok/blocked with screenshots
|
||||
|
||||
Begin now. Post progress after each source.
|
||||
```
|
||||
|
||||
0
data/ho36/.gitkeep
Normal file
31
data/ho36/evidence.csv
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
target,source,metric_name,metric_value,url,captured_at,status,confidence,notes,screenshot_path
|
||||
ho36,other,canonical_url_official_site,https://ho36lyon.com/,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,Official site captured via Playwright.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,page_title,HO36 Hostel Lyon - Site Officiel - Meilleurs prix,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,From <title> tag.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,meta_description_fr,"Le HO36 est un lieu atypique, cool et abordable qui a été pensé comme un lieu d'échange et de découvertes offrant à ses hôtes une véritable expérience de voyage. Séjournez dans notre auberge située au coeur de Lyon ! Lits à partir de 22€/nuit, bar, espaces de vie...",https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,"From <meta name=""description"">.",data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,tagline,Eat - drink - live - sleep,https://ho36lyon.com/en/,2026-01-02T18:22:11+00:00,ok,high,From JSON-LD (WebSite.description).,data/ho36/screenshots/ho36__official_site__en__20260102.png
|
||||
ho36,official_site,meta_description_en,"HO36 is an atypical, cool and affordable place that has been designed as a place of exchange and discovery, offering guests a true travel experience. Stay at our hostel in the heart of Lyon! Beds from 22€/night, bar, living spaces...",https://ho36lyon.com/en/,2026-01-02T18:22:11+00:00,ok,high,"From <meta name=""description"">.",data/ho36/screenshots/ho36__official_site__en__20260102.png
|
||||
ho36,official_site,booking_cta_text,Réserver un lit,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,Embedded booking widget on homepage.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,booking_engine_domain,www.mews.li,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,Homepage loads https://www.mews.li/distributor/distributor.min.js and uses a Mews widget token.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,languages_available,"fr,en,it,nl",https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,From hreflang + language switcher.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,address,"36 Rue Montesquieu, 69007 Lyon",https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,From official site footer map link.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,starting_price_eur_per_night,22,https://ho36lyon.com/en/,2026-01-02T18:22:11+00:00,ok,high,Marketing claim in meta description: “Beds from 22€/night”.,data/ho36/screenshots/ho36__official_site__en__20260102.png
|
||||
ho36,official_site,private_rooms_count,13,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,Section “13 chambres privatives”.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,dorm_beds_count,50,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,high,Section “50 lits en dortoirs”.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,official_site,amenities_highlights,"accueil_multilingue_24_7,bagagerie,boutique_essentiels,petit_dejeuner,cafeterie,bar_bieres_cocktails,espaces_de_vie,programmation_artistique",https://ho36lyon.com/,2026-01-02T18:03:15+00:00,ok,med,"Compiled from visible sections (“Services disponibles”, “PETIT DEJEUNER ET BOISSONS 7j/7”, and experience description).",data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,other,canonical_url_google_maps_shortlink,https://maps.app.goo.gl/vfGnGGQxJBNwvdgX8,https://maps.app.goo.gl/vfGnGGQxJBNwvdgX8,2026-01-02T18:03:15+00:00,ok,high,Linked from official site footer.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,google_maps,rating,4.1,"https://www.google.fr/maps/place/HO36+Hostel+Lyon/@45.7529047,4.8394703,17z/data=!4m9!3m8!1s0x47f4ea44c206c2fd:0xb36a1c20ef67ead4!5m2!4m1!1i2!8m2!3d45.752901!4d4.8420452!16s%2Fg%2F1tnpkbvv?entry=tts",2026-01-02T18:05:56+00:00,ok,med,"Extracted from Google Maps UI (displayed as “4,1”). Review count was not visible in the rendered view.",data/ho36/screenshots/ho36__google_maps__20260102.png
|
||||
ho36,google_maps,review_count,1447,https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d11135.645489923992!2d4.84204!3d45.7529227!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0xb36a1c20ef67ead4!2sho36%20Lyon%20Guilloti%C3%A8re!5e0!3m2!1sfr!2sfr!4v1567089009427!5m2!1sfr!2sfr,2026-01-02T18:40:13+00:00,ok,high,Extracted from the Google Maps embed iframe (same embed URL appears on the official site). The embed shows “1 447 avis”.,data/ho36/screenshots/ho36__google_maps_embed_iframe__20260102.png
|
||||
ho36,instagram,profile_url,https://www.instagram.com/ho36hotel_lyon/,https://www.instagram.com/ho36hotel_lyon/,2026-01-02T18:11:22+00:00,ok,high,Linked from official site footer.,data/ho36/screenshots/ho36__instagram__20260102.png
|
||||
ho36,instagram,followers_count,3247,https://www.instagram.com/ho36hotel_lyon/,2026-01-02T18:11:22+00:00,ok,high,"From og:description meta (“3,247 followers…”).",data/ho36/screenshots/ho36__instagram__20260102.png
|
||||
ho36,instagram,posts_count,108,https://www.instagram.com/ho36hotel_lyon/,2026-01-02T18:11:22+00:00,ok,high,From og:description meta (“…108 publications…”).,data/ho36/screenshots/ho36__instagram__20260102.png
|
||||
ho36,facebook,page_url,https://www.facebook.com/ho36hotels/,https://www.facebook.com/ho36hotels/,2026-01-02T18:12:26+00:00,ok,high,Linked from official site footer.,data/ho36/screenshots/ho36__facebook__20260102.png
|
||||
ho36,facebook,likes_count,3185,https://www.facebook.com/ho36hotels/,2026-01-02T18:12:26+00:00,ok,high,From og:description meta (brand-level page: includes Lyon + other locations).,data/ho36/screenshots/ho36__facebook__20260102.png
|
||||
ho36,facebook,people_were_here,104,https://www.facebook.com/ho36hotels/,2026-01-02T18:12:26+00:00,ok,high,From og:description meta (brand-level page).,data/ho36/screenshots/ho36__facebook__20260102.png
|
||||
ho36,tripadvisor,listing_url,https://www.tripadvisor.fr/Hotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html,https://www.tripadvisor.fr/Hotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html,2026-01-02T18:09:34+00:00,blocked,low,Blocked by DataDome CAPTCHA in this environment (no bypass attempted).,data/ho36/screenshots/ho36__tripadvisor__20260102.png
|
||||
ho36,booking,listing_url,https://www.booking.com/hotel/fr/ho36-hostel.html,https://www.booking.com/hotel/fr/ho36-hostel.html,2026-01-02T19:11:29+00:00,blocked,high,Booking.com returned an AWS WAF / bot challenge (HTTP 202 + challenge.js) when attempting to access the (probable) HO36 listing URL. No bypass attempted.,data/ho36/screenshots/ho36__booking__listing_waf__20260102.png
|
||||
ho36,hostelworld,listing_url,https://www.hostelworld.com/hostels/p/270217/ho36-hostel/,https://www.hostelworld.com/hostels/p/270217/ho36-hostel/,2026-01-02T19:01:18+00:00,ok,high,"Located via Hostelworld Lyon directory page, then captured directly.",data/ho36/screenshots/ho36__hostelworld_listing__20260102.png
|
||||
ho36,hostelworld,rating,8.86,https://www.hostelworld.com/hostels/p/270217/ho36-hostel/,2026-01-02T19:01:18+00:00,ok,high,AggregateRating.ratingValue from schema.org JSON-LD on the listing page.,data/ho36/screenshots/ho36__hostelworld_listing__20260102.png
|
||||
ho36,hostelworld,review_count,1587,https://www.hostelworld.com/hostels/p/270217/ho36-hostel/,2026-01-02T19:01:18+00:00,ok,high,AggregateRating.reviewCount from schema.org JSON-LD on the listing page.,data/ho36/screenshots/ho36__hostelworld_listing__20260102.png
|
||||
ho36,hostelworld,lyon_directory_position,8,https://www.hostelworld.com/hostels/europe/france/lyon/,2026-01-02T19:09:05+00:00,ok,med,Position in the Hostelworld Lyon directory page (schema.org ItemList position). Sorting may vary by user/session.,data/ho36/screenshots/ho36__hostelworld_lyon__20260102.png
|
||||
ho36,tiktok,profile_url,,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,unknown,low,No TikTok link found on official site footer/header in captured pages.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
ho36,other,nye_availability_or_policy_indicator,,https://ho36lyon.com/,2026-01-02T18:03:15+00:00,unknown,low,No publicly visible NYE-specific sold-out/min-night indicator captured without deep booking-engine interaction.,data/ho36/screenshots/ho36__official_site__home__20260102.png
|
||||
|
397
data/ho36/evidence.json
Normal file
|
|
@ -0,0 +1,397 @@
|
|||
{
|
||||
"hostel_name": "HO36 Lyon",
|
||||
"collected_at": "2026-01-02T18:22:30+00:00",
|
||||
"collector_session": "A",
|
||||
"evidence": [
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "other",
|
||||
"metric_name": "canonical_url_official_site",
|
||||
"metric_value": "https://ho36lyon.com/",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Official site captured via Playwright.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "page_title",
|
||||
"metric_value": "HO36 Hostel Lyon - Site Officiel - Meilleurs prix",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From <title> tag.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "meta_description_fr",
|
||||
"metric_value": "Le HO36 est un lieu atypique, cool et abordable qui a été pensé comme un lieu d'échange et de découvertes offrant à ses hôtes une véritable expérience de voyage. Séjournez dans notre auberge située au coeur de Lyon ! Lits à partir de 22€/nuit, bar, espaces de vie...",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From <meta name=\"description\">.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "tagline",
|
||||
"metric_value": "Eat - drink - live - sleep",
|
||||
"url": "https://ho36lyon.com/en/",
|
||||
"captured_at": "2026-01-02T18:22:11+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From JSON-LD (WebSite.description).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__en__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "meta_description_en",
|
||||
"metric_value": "HO36 is an atypical, cool and affordable place that has been designed as a place of exchange and discovery, offering guests a true travel experience. Stay at our hostel in the heart of Lyon! Beds from 22€/night, bar, living spaces...",
|
||||
"url": "https://ho36lyon.com/en/",
|
||||
"captured_at": "2026-01-02T18:22:11+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From <meta name=\"description\">.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__en__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "booking_cta_text",
|
||||
"metric_value": "Réserver un lit",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Embedded booking widget on homepage.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "booking_engine_domain",
|
||||
"metric_value": "www.mews.li",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Homepage loads https://www.mews.li/distributor/distributor.min.js and uses a Mews widget token.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "languages_available",
|
||||
"metric_value": "fr,en,it,nl",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From hreflang + language switcher.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "address",
|
||||
"metric_value": "36 Rue Montesquieu, 69007 Lyon",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From official site footer map link.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "starting_price_eur_per_night",
|
||||
"metric_value": 22,
|
||||
"url": "https://ho36lyon.com/en/",
|
||||
"captured_at": "2026-01-02T18:22:11+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Marketing claim in meta description: “Beds from 22€/night”.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__en__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "private_rooms_count",
|
||||
"metric_value": 13,
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Section “13 chambres privatives”.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "dorm_beds_count",
|
||||
"metric_value": 50,
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Section “50 lits en dortoirs”.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "official_site",
|
||||
"metric_name": "amenities_highlights",
|
||||
"metric_value": "accueil_multilingue_24_7,bagagerie,boutique_essentiels,petit_dejeuner,cafeterie,bar_bieres_cocktails,espaces_de_vie,programmation_artistique",
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "med",
|
||||
"notes": "Compiled from visible sections (“Services disponibles”, “PETIT DEJEUNER ET BOISSONS 7j/7”, and experience description).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "other",
|
||||
"metric_name": "canonical_url_google_maps_shortlink",
|
||||
"metric_value": "https://maps.app.goo.gl/vfGnGGQxJBNwvdgX8",
|
||||
"url": "https://maps.app.goo.gl/vfGnGGQxJBNwvdgX8",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Linked from official site footer.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "google_maps",
|
||||
"metric_name": "rating",
|
||||
"metric_value": 4.1,
|
||||
"url": "https://www.google.fr/maps/place/HO36+Hostel+Lyon/@45.7529047,4.8394703,17z/data=!4m9!3m8!1s0x47f4ea44c206c2fd:0xb36a1c20ef67ead4!5m2!4m1!1i2!8m2!3d45.752901!4d4.8420452!16s%2Fg%2F1tnpkbvv?entry=tts",
|
||||
"captured_at": "2026-01-02T18:05:56+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "med",
|
||||
"notes": "Extracted from Google Maps UI (displayed as “4,1”). Review count was not visible in the rendered view.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__google_maps__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "google_maps",
|
||||
"metric_name": "review_count",
|
||||
"metric_value": 1447,
|
||||
"url": "https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d11135.645489923992!2d4.84204!3d45.7529227!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0xb36a1c20ef67ead4!2sho36%20Lyon%20Guilloti%C3%A8re!5e0!3m2!1sfr!2sfr!4v1567089009427!5m2!1sfr!2sfr",
|
||||
"captured_at": "2026-01-02T18:40:13+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Extracted from the Google Maps embed iframe (same embed URL appears on the official site). The embed shows \u201c1\u202f447 avis\u201d.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__google_maps_embed_iframe__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "instagram",
|
||||
"metric_name": "profile_url",
|
||||
"metric_value": "https://www.instagram.com/ho36hotel_lyon/",
|
||||
"url": "https://www.instagram.com/ho36hotel_lyon/",
|
||||
"captured_at": "2026-01-02T18:11:22+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Linked from official site footer.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__instagram__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "instagram",
|
||||
"metric_name": "followers_count",
|
||||
"metric_value": 3247,
|
||||
"url": "https://www.instagram.com/ho36hotel_lyon/",
|
||||
"captured_at": "2026-01-02T18:11:22+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From og:description meta (“3,247 followers…”).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__instagram__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "instagram",
|
||||
"metric_name": "posts_count",
|
||||
"metric_value": 108,
|
||||
"url": "https://www.instagram.com/ho36hotel_lyon/",
|
||||
"captured_at": "2026-01-02T18:11:22+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From og:description meta (“…108 publications…”).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__instagram__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "facebook",
|
||||
"metric_name": "page_url",
|
||||
"metric_value": "https://www.facebook.com/ho36hotels/",
|
||||
"url": "https://www.facebook.com/ho36hotels/",
|
||||
"captured_at": "2026-01-02T18:12:26+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Linked from official site footer.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__facebook__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "facebook",
|
||||
"metric_name": "likes_count",
|
||||
"metric_value": 3185,
|
||||
"url": "https://www.facebook.com/ho36hotels/",
|
||||
"captured_at": "2026-01-02T18:12:26+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From og:description meta (brand-level page: includes Lyon + other locations).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__facebook__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "facebook",
|
||||
"metric_name": "people_were_here",
|
||||
"metric_value": 104,
|
||||
"url": "https://www.facebook.com/ho36hotels/",
|
||||
"captured_at": "2026-01-02T18:12:26+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "From og:description meta (brand-level page).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__facebook__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "tripadvisor",
|
||||
"metric_name": "listing_url",
|
||||
"metric_value": "https://www.tripadvisor.fr/Hotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html",
|
||||
"url": "https://www.tripadvisor.fr/Hotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html",
|
||||
"captured_at": "2026-01-02T18:09:34+00:00",
|
||||
"status": "blocked",
|
||||
"confidence": "low",
|
||||
"notes": "Blocked by DataDome CAPTCHA in this environment (no bypass attempted).",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__tripadvisor__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "booking",
|
||||
"metric_name": "listing_url",
|
||||
"metric_value": "https://www.booking.com/hotel/fr/ho36-hostel.html",
|
||||
"url": "https://www.booking.com/hotel/fr/ho36-hostel.html",
|
||||
"captured_at": "2026-01-02T19:11:29+00:00",
|
||||
"status": "blocked",
|
||||
"confidence": "high",
|
||||
"notes": "Booking.com returned an AWS WAF / bot challenge (HTTP 202 + challenge.js) when attempting to access the (probable) HO36 listing URL. No bypass attempted.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__booking__listing_waf__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "hostelworld",
|
||||
"metric_name": "listing_url",
|
||||
"metric_value": "https://www.hostelworld.com/hostels/p/270217/ho36-hostel/",
|
||||
"url": "https://www.hostelworld.com/hostels/p/270217/ho36-hostel/",
|
||||
"captured_at": "2026-01-02T19:01:18+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "Located via Hostelworld Lyon directory page, then captured directly.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__hostelworld_listing__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "hostelworld",
|
||||
"metric_name": "rating",
|
||||
"metric_value": 8.86,
|
||||
"url": "https://www.hostelworld.com/hostels/p/270217/ho36-hostel/",
|
||||
"captured_at": "2026-01-02T19:01:18+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "AggregateRating.ratingValue from schema.org JSON-LD on the listing page.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__hostelworld_listing__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "hostelworld",
|
||||
"metric_name": "review_count",
|
||||
"metric_value": 1587,
|
||||
"url": "https://www.hostelworld.com/hostels/p/270217/ho36-hostel/",
|
||||
"captured_at": "2026-01-02T19:01:18+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "high",
|
||||
"notes": "AggregateRating.reviewCount from schema.org JSON-LD on the listing page.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__hostelworld_listing__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "hostelworld",
|
||||
"metric_name": "lyon_directory_position",
|
||||
"metric_value": 8,
|
||||
"url": "https://www.hostelworld.com/hostels/europe/france/lyon/",
|
||||
"captured_at": "2026-01-02T19:09:05+00:00",
|
||||
"status": "ok",
|
||||
"confidence": "med",
|
||||
"notes": "Position in the Hostelworld Lyon directory page (schema.org ItemList position). Sorting may vary by user/session.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__hostelworld_lyon__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "tiktok",
|
||||
"metric_name": "profile_url",
|
||||
"metric_value": null,
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "unknown",
|
||||
"confidence": "low",
|
||||
"notes": "No TikTok link found on official site footer/header in captured pages.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
},
|
||||
{
|
||||
"target": "ho36",
|
||||
"source": "other",
|
||||
"metric_name": "nye_availability_or_policy_indicator",
|
||||
"metric_value": null,
|
||||
"url": "https://ho36lyon.com/",
|
||||
"captured_at": "2026-01-02T18:03:15+00:00",
|
||||
"status": "unknown",
|
||||
"confidence": "low",
|
||||
"notes": "No publicly visible NYE-specific sold-out/min-night indicator captured without deep booking-engine interaction.",
|
||||
"screenshot_path": "data/ho36/screenshots/ho36__official_site__home__20260102.png"
|
||||
}
|
||||
],
|
||||
"profile": {
|
||||
"positioning": "Atypical, cool and affordable hostel designed as a place of exchange and discovery (with artistic programming) offering a “true travel experience”.",
|
||||
"target_audience": [
|
||||
"hostel_travelers",
|
||||
"backpackers",
|
||||
"solo_travelers"
|
||||
],
|
||||
"key_amenities": [
|
||||
"bar",
|
||||
"breakfast",
|
||||
"cafeteria",
|
||||
"24_7_reception",
|
||||
"luggage_storage",
|
||||
"mixed_and_women_dorms",
|
||||
"private_rooms"
|
||||
],
|
||||
"vibe_tags": [
|
||||
"social",
|
||||
"affordable",
|
||||
"design_forward",
|
||||
"art_programming"
|
||||
],
|
||||
"booking_engine": "Mews",
|
||||
"languages": [
|
||||
"fr",
|
||||
"en",
|
||||
"it",
|
||||
"nl"
|
||||
]
|
||||
}
|
||||
}
|
||||
45
data/ho36/profile.md
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# HO36 Lyon — Footprint profile (Session A)
|
||||
|
||||
## Canonical links
|
||||
|
||||
- Official site: https://ho36lyon.com/
|
||||
- Google Maps (shortlink): https://maps.app.goo.gl/vfGnGGQxJBNwvdgX8
|
||||
- Hostelworld: https://www.hostelworld.com/hostels/p/270217/ho36-hostel/
|
||||
- Instagram: https://www.instagram.com/ho36hotel_lyon/
|
||||
- Facebook: https://www.facebook.com/ho36hotels/
|
||||
- TripAdvisor (blocked by CAPTCHA during capture): https://www.tripadvisor.fr/Hotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html
|
||||
|
||||
## Quick facts (from captured sources)
|
||||
|
||||
- Address: 36 Rue Montesquieu, 69007 Lyon
|
||||
- Booking CTA: “Réserver un lit” embedded on homepage
|
||||
- Booking engine: Mews (`www.mews.li`) embedded widget on the official site
|
||||
- Languages visible: FR / EN / IT / NL
|
||||
- Inventory claims: 13 private rooms + 50 dorm beds
|
||||
- Price signal: “Beds from 22€/night” (site meta description)
|
||||
|
||||
## Positioning / messaging (exact copy excerpts)
|
||||
|
||||
- FR meta description: “Le HO36 est un lieu atypique, cool et abordable… lieu d'échange et de découvertes…”
|
||||
- EN meta description: “HO36 is an atypical, cool and affordable place… designed as a place of exchange and discovery…”
|
||||
- Tagline (JSON‑LD): “Eat - drink - live - sleep”
|
||||
|
||||
## Amenities / experience cues (high-signal)
|
||||
|
||||
- “Services disponibles” includes: 24/7 multilingual reception, luggage storage, small essentials shop
|
||||
- On-site food/drink cues: breakfast (7:00–11:00), cafeteria (7:00–23:30), beers + “creative cocktails”
|
||||
- “L'expérience ho36” text explicitly emphasizes: quality service at “prix doux”, cosmopolitan teams, and “programmation artistique”
|
||||
|
||||
## Social proof (public, no-login)
|
||||
|
||||
- Instagram @ho36hotel_lyon: 3,247 followers; 108 posts (from `og:description`)
|
||||
- Facebook page “HO36” (brand-level page): 3,185 likes; 104 “people were here” (from `og:description`)
|
||||
- Google Maps: 4.1 rating; 1,447 reviews (via Google Maps embed iframe)
|
||||
- Hostelworld: 8.86 rating; 1,587 reviews (schema.org JSON-LD on listing page)
|
||||
|
||||
## Directories / platforms (access outcomes)
|
||||
|
||||
- Google Maps: 4.1 rating; 1,447 reviews
|
||||
- TripAdvisor: blocked by DataDome CAPTCHA (no bypass attempted)
|
||||
- Booking.com: AWS WAF / bot challenge when attempting listing access (no bypass attempted)
|
||||
- Hostelworld: listing accessible and captured (rating + review count extracted)
|
||||
225
data/ho36/raw/ho36__booking__ho36_query__20260102.html
Normal file
255
data/ho36/raw/ho36__booking__home__20260102.html
Normal file
3457
data/ho36/raw/ho36__booking__listing_waf__20260102.html
Normal file
1490
data/ho36/raw/ho36__booking__lyon_search__20260102.html
Normal file
1490
data/ho36/raw/ho36__booking__search3__20260102.html
Normal file
1874
data/ho36/raw/ho36__booking__search__20260102.html
Normal file
234
data/ho36/raw/ho36__facebook__20260102.html
Normal file
400
data/ho36/raw/ho36__google_maps__20260102.html
Normal file
341
data/ho36/raw/ho36__hostelworld__home__20260102.html
Normal file
1770
data/ho36/raw/ho36__hostelworld__search_url__20260102.html
Normal file
299
data/ho36/raw/ho36__hostelworld_listing__20260102.html
Normal file
305
data/ho36/raw/ho36__hostelworld_lyon__20260102.html
Normal file
152
data/ho36/raw/ho36__instagram__20260102.html
Normal file
3301
data/ho36/raw/ho36__official_site__en__20260102.html
Normal file
3219
data/ho36/raw/ho36__official_site__home__20260102.html
Normal file
1
data/ho36/raw/ho36__tripadvisor__20260102.html
Normal file
|
|
@ -0,0 +1 @@
|
|||
<html lang="fr"><head><title>tripadvisor.fr</title><style>#cmsg{animation: A 1.5s;}@keyframes A{0%{opacity:0;}99%{opacity:0;}100%{opacity:1;}}</style><meta name="viewport" content="width=device-width, initial-scale=1.0"></head><body style="margin:0"><script data-cfasync="false">var dd={'rt':'c','cid':'AHrlqAAAAAMATh8GueaAiBAAmgx0ow==','hsh':'2F05D671381DB06BEE4CC52C7A6FD3','t':'bv','qp':'','s':46694,'e':'232ad31eb4fdd90a6c80d898b055dbc4d6a15aae427d5dee3ad0be40920890d9591a663e8b329b64ddbfbe3cc2abe499','host':'geo.captcha-delivery.com','cookie':'reO0dMUkQPeEXkUKC_yg2tPmBMdaLAMMS8X~tlpsz~_~Wq~68jdgzS22lNuopKu3fYlmuPFEHPsRVcMIVb0NJyCo2RE4BdzAmsVOF7~~wdGxnfmnalIB~~2RgspSfMwt'}</script><script data-cfasync="false" src="https://ct.captcha-delivery.com/c.js"></script><iframe src="https://geo.captcha-delivery.com/captcha/?initialCid=AHrlqAAAAAMATh8GueaAiBAAmgx0ow%3D%3D&hash=2F05D671381DB06BEE4CC52C7A6FD3&cid=reO0dMUkQPeEXkUKC_yg2tPmBMdaLAMMS8X~tlpsz~_~Wq~68jdgzS22lNuopKu3fYlmuPFEHPsRVcMIVb0NJyCo2RE4BdzAmsVOF7~~wdGxnfmnalIB~~2RgspSfMwt&t=bv&referer=https%3A%2F%2Fwww.tripadvisor.fr%2FHotel_Review-g187265-d293643-Reviews-Ho36_Hostel-Lyon_Rhone_Auvergne_Rhone_Alpes.html&s=46694&e=232ad31eb4fdd90a6c80d898b055dbc4d6a15aae427d5dee3ad0be40920890d9591a663e8b329b64ddbfbe3cc2abe499&dm=cd" sandbox="allow-scripts allow-same-origin allow-forms" allow="accelerometer; gyroscope; magnetometer" title="DataDome CAPTCHA" width="100%" height="100%" style="height:100vh;" frameborder="0" border="0" scrolling="yes"></iframe></body></html>
|
||||
0
data/ho36/screenshots/.gitkeep
Normal file
BIN
data/ho36/screenshots/ho36__booking__ho36_query__20260102.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
data/ho36/screenshots/ho36__booking__home__20260102.png
Normal file
|
After Width: | Height: | Size: 2.7 MiB |
BIN
data/ho36/screenshots/ho36__booking__listing_waf__20260102.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
BIN
data/ho36/screenshots/ho36__booking__lyon_search__20260102.png
Normal file
|
After Width: | Height: | Size: 4.1 MiB |
BIN
data/ho36/screenshots/ho36__booking__results2__20260102.png
Normal file
|
After Width: | Height: | Size: 3.4 MiB |
BIN
data/ho36/screenshots/ho36__booking__results__20260102.png
Normal file
|
After Width: | Height: | Size: 2.9 MiB |
BIN
data/ho36/screenshots/ho36__booking__search3__20260102.png
Normal file
|
After Width: | Height: | Size: 4.1 MiB |
BIN
data/ho36/screenshots/ho36__booking__search__20260102.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
data/ho36/screenshots/ho36__facebook__20260102.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
data/ho36/screenshots/ho36__google_maps__20260102.png
Normal file
|
After Width: | Height: | Size: 732 KiB |
|
After Width: | Height: | Size: 733 KiB |
BIN
data/ho36/screenshots/ho36__hostelworld__home__20260102.png
Normal file
|
After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 2.5 MiB |
BIN
data/ho36/screenshots/ho36__hostelworld__search__20260102.png
Normal file
|
After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 188 KiB |
BIN
data/ho36/screenshots/ho36__hostelworld_listing__20260102.png
Normal file
|
After Width: | Height: | Size: 473 KiB |
BIN
data/ho36/screenshots/ho36__hostelworld_lyon__20260102.png
Normal file
|
After Width: | Height: | Size: 696 KiB |
BIN
data/ho36/screenshots/ho36__instagram__20260102.png
Normal file
|
After Width: | Height: | Size: 154 KiB |
BIN
data/ho36/screenshots/ho36__official_site__en__20260102.png
Normal file
|
After Width: | Height: | Size: 1.2 MiB |
BIN
data/ho36/screenshots/ho36__official_site__home__20260102.png
Normal file
|
After Width: | Height: | Size: 804 KiB |
BIN
data/ho36/screenshots/ho36__tripadvisor__20260102.png
Normal file
|
After Width: | Height: | Size: 31 KiB |