3 puan yazan GN⁺ 2024-04-15 | 1 yorum | WhatsApp'ta paylaş
  • MarkdownDown, herhangi bir web sayfasını temiz bir Markdown belgesine dönüştüren bir araçtır
  • Dönüştürme sonucunda görsel indirmeyi destekler; böylece yerelde kaydedilen görselleri Markdown'a bağlayabilirsiniz
  • İçerik dışı öğeleri kaldırma seçeneğiyle ana içerikle ilgisiz öğeler azaltılabilir
  • Markdown çıktısına GPT Filter uygulama seçeneği de sunar
  • Web sayfası içeriğini Markdown olarak saklamak veya görsellerle birlikte düzenlemek isteyen kullanıcılar için faydalıdır

Web sayfalarını Markdown'a düzenleme

  • MarkdownDown, web sayfalarını temiz bir Markdown'a dönüştürür
  • Dönüştürme sırasında görselleri indirip sonuçta yerel görsel bağlantılarını ekleyebilir

Dönüştürme seçenekleri

  • İçerik odaklı düzenleme

    • Remove non-content elements seçeneğiyle içerik olmayan öğeler kaldırılır
  • Görsel işleme

    • Download images locally and link them seçeneğiyle görseller yerelde kaydedilir ve bağlanır
  • GPT Filter uygulama

    • Apply GPT Filter on Markdown seçeneğiyle Markdown çıktısına GPT Filter uygulanabilir

1 yorum

 
GN⁺ 2024-04-15
Hacker News görüşleri
  • Web sitelerini Markdown’a dönüştürmede birbirinden farklı üç sorun var: sayfa içeriğini eksiksiz kazımak, reklamları ve yan içerikleri kaldırmak, doğru yerleşim ve bölüm biçimini elde etmek
    İçeriği hassas çıkarma ve biçimlendirme için Trafilatura, Newspaper4k ve python-readability tabanlı çözümler varsayılan hâlleriyle en iyi çalışıyor; eksiksiz toplama içinse kazıma servisleri ile Selenium kombinasyonu iyi uyuyor
    Bu aracın neyi farklı ya da daha iyi yaptığını merak ediyorum. Bu alan bir süredir durağandı; öğrendiklerinizi duymak isterim

    • Özellikle JavaScript runtime’ının olmadığı ya da kullanılmak istenmediği ortamlarda kapsamlı kazıma zor
      İçerik çıkarmada Postlight kütüphanesinin yaklaşımı epey temizdi. Her HTML düğümüne metin uzunluğu, bağlantı yoğunluğu, CSS sınıfı gibi sezgisel ölçütlerle puan verip en yüksek puanlı düğümü seçiyor. Kişisel bir sonradan okuma uygulaması yaparken bunu Swift’e port etmeyi denemiştim
      https://github.com/postlight/parser
    • Benim makale web kazıyıcım şu anda Playwright ve reklam engelleyiciye geçtikten sonra sayfada Mozilla’nın readability aracını çalıştırıyor, ardından sonucu bir LLM kontrol ediyor
      Kontrol başarısız olursa tüm sayfa HTML bağlamını kırpıyor, Pandoc ile Markdown’a dönüştürüyor, sonra LLM Markdown’dan ana metni çıkarıyor
  • Vercel demek; trafik gelirse artık faturaya dikkat etmek gerek. Umarım Vercel’in sürekli kullanmaya teşvik ettiği şekilde kullanmıyorsunuzdur

    • Dokümanların genelinde kullanmaya yönlendirmesi biraz buruk. Bazen yalnızca WebP bile yeterli olabiliyor
      Otobüs memindeki gibi, mutlu taraf kullanıcı ve Vercel; üzgün taraf ise cüzdan
      Elbette dinamik ölçekleme ve küçültme gerekiyorsa istisna
    • Aslında gayet iyi dayandı ve maliyet de yok denecek kadar azdı
      HN trafiğini karşılamak için özel bir şey yapmadım; sadece temel bir Next.js uygulamasıydı
  • Görsel indirme ve GPT tabanlı filtreleme sunmak iyi fikir
    Geçen yıl benzer bir araç yaptım ama bu özellikler yok: https://url2text.com/
    UI yavaş olabilir ama ana sayfada örnek çıktıyı görebilirsiniz
    Altındaki API, Urlbox’ın web sitesi ekran görüntüsü API’si; doğrudan kullanıldığında performansı çok daha iyi. JavaScript ile render edilmiş HTML, metadata ve ekran görüntüsüyle birlikte Markdown’ı tek seferde isteyebiliyorsunuz: https://urlbox.com/extracting-text
    Sonuçları S3 uyumlu depolamaya doğrudan kaydetmek de mümkün: https://urlbox.com/s3
    Webhook ile de teslim alabilirsiniz: https://urlbox.com/webhooks
    Bir yan projede Urlbox’ın Markdown özelliğiyle ayda 1 milyondan fazla render alıyorum; bu tür Markdown’lar embedding ve prompt’larda kullanmak için çok daha iyi
    Tüm bir web sitesini bu şekilde kazımak isterseniz dctanner’ın yeni aracı da bakmaya değer: https://usescraper.com/

    • https://usescraper.com kurucusuyum. Artık tek URL kazıma seçeneği de var: https://docs.usescraper.com/api-reference/scraper/scrape
      Sayfa başına $0.001 ve headless Chrome tarayıcısı kullanıyor. Sonuçlar hızlı; yalnızca kullandığınız kadar ödüyorsunuz
    • İyi görünüyor ama url2text’te API yok gibi; urlbox’ta da yalnızca metin istendiğinde ekran görüntüsünü atlama seçeneği yok gibi duruyor
      Yalnızca metin gerekiyorsa epey pahalı görünüyor
  • Web sitesi çerez mesajı çıkarırsa bu araç orada takılıyor ve gerçek içeriği ayrıştıramıyor gibi görünüyor
    Örneğin https://www.cnbc.com/ adresini denedim; yalnızca çerez mesajı ve çevresindeki hukuki metinlerden Markdown üretti

    • Böyle şeyleri aşmak kolay değil ama şu şekilde çalışabilir: https://url2text.com/u/wYVake
      Farklı sayfa render türlerinden kaynaklanan birçok edge case’i zaten ele alan olgun bir API üzerine inşa edebildiğim için şanslıydım
  • Yalnızca htmltidy ve Pandoc’un HTML→Markdown dönüşümü bile gayet kullanılabilir sonuç veriyordu
    http://www.html-tidy.org/
    https://pandoc.org/

    • tidy’yi ilk kez duydum, umut verici görünüyor
      Son şablon HTML’in tamamını bununla çalıştırıp kalan hatalı yapıları bulmayı düşünmek hem cazip hem de korkutucu. Düzeltme sonuçlarının ne kadar yapısal olduğuna bağlı olarak bunu bir test suite’e dönüştürmek de mümkün olabilir
  • Ben de çok benzer olan smort.io’yu yaptım. Herhangi bir makale URL’sinin başına smort.io/ eklerseniz kolayca düzenleyebilir, not ekleyebilir ve paylaşabilirsiniz
    ArXiv makalelerinde de çalışıyor
    Smort’un Show HN gönderisi burada: https://news.ycombinator.com/item?id=30673502

  • Karmaşık bir pazarlama sayfasında denedim, çok iyi işledi
    Paylaşmanız mümkünse, host üzerinde ne kadar yük oluşturduğunu merak ediyorum. Ücretsiz olarak sürdürülebilecek düzeyde mi, yoksa sonunda maliyet verimliliği kötüleşir mi bilmek isterim

    • Headless Chrome instance’ı başlattığı için biraz ağır. Bu kısmı optimize etmeye bakacağım
      Bunun dışında GPT-4 pahalı ama şimdiye kadar maliyet yok denecek kadar az olduğu için umutluyum. Uzun süre sürdürülebilir gibi görünüyor
  • Yapay zekaya ihtiyaç olmayan durumlardan biri. Sayfadan içeriği çıkaran çok iyi çalışan bir algoritma var; uygulamalarından biri de https://github.com/buriy/python-readability.

    • Birkaç yıl önce boilerplate kaldırma araçlarını karşılaştırdığımda, jusText’in varsayılan hâliyle en iyi sonucu verdiğini hatırlıyorum
      readability ve birkaç başka kütüphaneyi de denemiştim. Bugünlerde son durumun ne olduğunu merak ediyorum
    • Burada yapay zeka isteğe bağlı. Markdown’a çevirmeden önce HTML’i temizlemek için readability kullanıyorlar
    • readability’yi en son denediğimde makalelerde iyi çalışıyordu ama başka tür sayfalarda zorlanıyordu
      İstediğimden çok daha fazla içeriği kaldırıyordu
    • Burada aynı işin sadece o araçla, yapay zeka olmadan nasıl yapılabileceğini merak ediyorum
    • Açıkçası çoğunun kara büyü olmasını bekliyordum ama projenin özü, kesinlikle zahmetle biriktirilmiş bir regex demeti gibi görünüyor. Harika
  • Her zaman şaşırtıcı olan Pandoc(https://pandoc.org/) bu işi çok iyi yapıyor. Aslında neredeyse tüm diğer belge biçimlerini de destekliyor

    • Katılıyorum. Pandoc, var olan araçlar arasında en faydalılardan biri olmasına rağmen neredeyse hiç bahsedilmeyen bir araç
      Şaşırtıcı, kullanımı kolay ve iyi çalışıyor. Bu alanda sık sık yeni araçlar çıkıyor ama beni Pandoc dışında bir şey kullanmaya ikna etmesi için gerçekten özgün ve ikna edici bir özelliği olması ya da belirli bir kullanım senaryosuna çok iyi optimize edilmiş olması gerekir gibi geliyor
  • Harika. Okuduğum her sayfaya bunu uygulayıp bir yerlere kaydeden bir tarayıcı uzantısı olsa güzel olurdu

    • Firefox için Singlefile: https://addons.mozilla.org/en-US/firefox/addon/single-file/
    • Benim manuel olarak kullandığım seçenek Markdown clipper
      https://github.com/deathau/markdown-clipper
      Benzer alternatif uzantılardan onlarca vardır muhtemelen
    • Wallabag + Obsidian + Wallabag Browser Ext kombinasyonu iyi. Manuel tetikleniyor ama harika
    • Omnivore, kopya kaydetmek için web arşivini kullanıyor
      https://omnivore.app/
    • Pocket, Readwise Reader, Matter gibi uygulamalar zaten bunu tarif etmiyor mu diye düşünüyorum
      Düzenleme: Çok hızlı okumuşum. Otomatik ve sistematik şekilde işleme kısmını kaçırmışım