محمد افاضاتی

دیده ها، شنیده ها و علاقه مندی های یک برنامه نویس
محمد افاضاتی
محمد افاضاتی برنامه نویس python php دیتابیس های postgresql mongodb و ...

رونوشتی از علاقه مندی هایم برای ماندگار تر شدن!

تبلیغات

طبقه بندی موضوعی

Feedburner RSS

Others

توییتر

۴ مطلب در آبان ۱۳۹۰ ثبت شده است

در این مقاله قرار است یک روبات بنویسیم که مطالب یک سایت را بخواند و در دیتابیس ذخیره کند ولی چگونه؟

من برای اینکار از چند تا کتابخانه استفاده خواهم کرد.

 

import urllib

site = urllib.urlopen('http://www.google.com')
site_data = site.read()
site.close()

 

در urllib به سادگی می توانید یک آدرس را دانلود کنید. ما برای scrap باید آدرس را بسازیم و هر دفعه دوباره دانلود کنیم.

۹ نظر موافقین ۳ مخالفین ۰ ۱۷ آبان ۹۰ ، ۱۷:۰۳
محمد افاضاتی

کار اصلی Twisted ساخت برنامه های network در پایتون است. کارهایی از قبیل asynchronous programming به راحتی با Twisted قابل انجام است. در انتها می بینید که به راحتی می توانید یک وب سرور ساده با Twisted بنویسید. کلا کارهای کولی با Twisted میشه کرد :D

 

در اکثر جاها Twisted کارها، نوشتن یادگیری Twisted نیاز به کار و تمرین زیاد داره در عین حالی که کد خوبی داره و مستندات کاملی داره.

 

from twisted.web import server, resource
from twisted.internet import reactor

class HelloResource(resource.Resource):
    isLeaf = True
    def render_GET(self, request):
        request.setHeader("content-type", "text/plain")
        return "Hello, world!"

reactor.listenTCP(8080, server.Site(HelloResource()))
reactor.run()

در نمونه ی بالا اومده با وب سرور Twisted یک صفحه ساده Hello, World ساده درست می کند.

 

چند وقتی هست که دوست دارم درباره Twisted مطالبی بنویسم. مطلب فارسی مناسبی برای این کتابخانه وجود ندارد.

بعد از این درباره asynchronous و thread و parallel می گم و در نهایت یه برنامه ای می نویسیم .

 

سایت اصلی:

http://twistedmatrix.com

۲ نظر موافقین ۱ مخالفین ۰ ۱۵ آبان ۹۰ ، ۱۲:۲۷
محمد افاضاتی

web server چیست؟ به طور کلی هر چیز ( نرم افزاری یا سخت افزاری ) که داده ای را از طریق اینترنت یا شبکه به کاربر منتقل کند web server نامیده می شود.

nginx نامweb server/reverse proxy ی سبکی است که در سال ۲۰۰۲ به علت مشکل تعداد درخواست زیاد در سایت روسی http://www.rambler.ru شکل گرفت و در سال ۲۰۰۴ اولین نسخه رسمی خود را انتشار داد. تا کنون این وب سرور 11.28%. از سهم تمام وب سرور های دنیا را در دست دارد.

این وب سرور که هر روز جمع بیشتری از آن استفاده می کنند Wordpress.com را لیست استفاده کننده گان خود دارد.

از نکات مهم این وب سرور این است که بر روی سیستم عامل های windows linux Bsd و osx به راحتی نصب می شود

در این سیستم استفاده از روش  asynchronous event-driven  است که باعث شده که به میزان استفاده ثابت از RAM برسیم.


۷ نظر موافقین ۱ مخالفین ۰ ۱۳ آبان ۹۰ ، ۱۶:۳۰
محمد افاضاتی

طبق عادت گذشته در ابتدای ماه لیستی از چیزهایی که دوست دارم اینجا درباره شان بنویسم در می آورم. اینگونه نقشه راهی خواهم داشت که می تونم به راحتی با استفاده از اون وقتم و بیشتر متمرکز کنم. در حقیقت دارم تلاش می کنم برای خودم برنامه ریزی بهتری بکنم.

خب برای ماه آبان و آذر چه کارهایی قرار است بکنیم؟

  • معرفی Nginx - مقاله ارایه شده در دومین کنفرانس نرم افزار های آزاد - زنجان شهریور ۱۳۹۰
  • معرفی Twisted - event-driven networking engine
  • چگونه یک روبات جمع آوری اطلاعات از یک سایت بنویسیم؟
  • DWM راهکار مناسبی برای مدیریت پنجره ها در لینوکس
  • تست و معرفی Dart - زبان گوگل
  • راه اندازی DNS Server
  • استفاده از KVM به عنوان یک ابزار عملی - نصب و راه اندازی
۰ نظر موافقین ۲ مخالفین ۰ ۱۱ آبان ۹۰ ، ۱۶:۳۵
محمد افاضاتی