BloggerToCHM
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: دو دقیقه


این آخرین مطلب ارسالی من در سال 87 خواهد بود. پیشاپیش فرا رسیدن سال جدید را خدمت شما تبریک عرض کرده و برای همه‌ی شما آرزوی سالی خوب و با برکت را دارم.

برنامه‌ی کوچکی را تهیه کرده‌ام که با دریافت لینک یک وبلاگ بلاگری، تمامی مطالب آن‌را (اعم از پست‌ها، کامنت‌ها و تصاویر) دریافت کرده و سپس حاصل را به صورت خودکار به یک فایل chm تبدیل می‌کند.
دریافت برنامه



پیش‌نیاز اجرا:
- نصب دات نت فریم ورک 2 یا بالاتر (دات نت فریم ورک 3 و نیم، سرویس پک یک توصیه می‌شود زیرا حاوی سرویس پک 2 دات نت فریم ورک 2 نیز هست و این سرویس پک به صورت جدا ارائه نشده است)
- نصب برنامه‌ی معروف و رایگان html help work shop (که از کامپایلر آن برای تولید فایل نهایی chm استفاده می‌شود)

طرز استفاده از برنامه هم بسیار ساده‌است.
پس از نصب پیشنیازهای ذکر شده، و نصب برنامه، یک shortcut روی دسکتاپ شما ایجاد می‌شود که به کمک آن می‌توان برنامه را اجرا نمود.
سپس از منوی فایل، گزینه‌ی new blog را انتخاب کرده و آدرس اصلی یک وبلاگ بلاگری را وارد کنید. همچنین یک نام گروه دلخواه را نیز برای آن وارد نمائید و در آخر کلیک بر روی دکمه‌ی add . لازم به ذکر است که حتما هنگام ثبت بلاگ‌ها نیاز به اتصال به اینترنت می‌باشد، زیرا باید بتوان آمار اولیه‌ی وبلاگ را دریافت نمود و همچنین مطمئن شد که این وبلاگ بلاگری است و فرمت مربوطه را دارد.
پس از ثبت یک بلاگ، یا می‌توان بر روی آن کلیک راست کرد و گزینه‌ی start processing را انتخاب نمود و یا وبلاگ‌های مورد نظر را تیک زد و سپس از منوی process گزینه‌ی start را انتخاب کرد تا عملیات دریافت اطلاعات وبلاگ‌های مورد نظر به ترتیب انجام شود.
در برنامه قسمت db to chm منظور حالت آفلاین است. وبلاگی را دریافت نموده‌اید اما می‌خواهید مجددا فایل chm آن‌را تهیه کنید. به این صورت اطلاعات از دیتابیس برنامه دریافت خواهد شد بجای دریافت از اینترنت.

نمونه‌ی فایل تولیدی
دریافت خلاصه‌ی وبلاگ جاری


اگر به هر دلیلی از طرح و رنگ پیش فرض فایل نهایی راضی نبودید، به پوشه‌ی template برنامه مراجعه کرده و فایل‌های htm و css مورد استفاده را ویرایش کنید و طرح و رنگ دلخواه خود را اعمال نمائید. فقط دقت داشته باشید که در این فایل‌های htm ، هرجایی کلمه‌ای با $ شروع شده بود یعنی قسمتی است که محتوای نهایی در آن‌جا قرار می‌گیرد و این نام نباید تغییری کند (محل آن مهم نیست، نام آن مهم است). همچنین بدیهی است که نام سلکتورهای فایل css مورد استفاده هم نباید تغییر کند.

موفق باشید.


پ.ن.
اگر در حین اجرای برنامه به مشکلی برخوردید، تمامی خطاهای برنامه در فایلی به نام errors.log ثبت می شود (در کنار فایل اجرایی برنامه تولید خواهد شد). لطفا این فایل را جایی آپلود کنید و سپس لینک دهید تا بتوان مشکل را دقیق‌تر بررسی نمود.

  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۱:۰۲
    خیر باشه انشااله
    تو سال جدید منتظرتون هستیم.
    عید شما مبارک و موفق باشید.
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۱:۰۶
    ممنون. سال نوی شما هم مبارک باشه.
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۳:۳۱
    ممنون. عید شما هم مبارک. امیدوارم که سال آینده سالی پر از موفقیت براتون باشه. امیدوارم که عمری باشه و از مطالب مفیدتون در سال آینده استفاده کنیم.
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۶:۰۰
    سلام
    من هم امیدوارم که سال آینده بیش از پیش موفق باشید و سال بسیار خوب همون طوری که دوست دارین برای شما باشه
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۶:۰۳
    با سپاس
    سال خوبی را برای همه‌ی شما آرزومندم.
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۰۹:۱۶
    سال نو شما هم مبارک باشد
    آقای نصیری فایل مورد نظر در رابطه با وبلاگ خودتان را دانلوود کردم اما مطالب نشان داده نمیشود!
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۱۱:۲۴
    ba tashakore faravan o khaste nabashid be shoma
    saale besiar besiar Elmi o movafaghiat aamizi ro vasatoon arezoo mikonam
    norooz mobarak
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۱۵:۳۶
    با سپاس.
    اگر فایل chm فوق رو نمی‌تونید مشاهده کنید احتمالا بلاک شده. روی فایل کلیک راست کنید و در قسمت خواص یک دکمه مخصوص اینکار هست.
    http://www.drexplain.com/press/chm-files-the-page-cannot-be-displayed-error/
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۲۰:۵۱
    ممون
    با کاری که شما گفتید مسئله حل شد. ممنون و دست شما درد نکند که فوق العاده است. آقا بقیه سرویس دهنده ها هم توی خط هست؟
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۲۰:۵۲
    به روز رسانی‌
    نگارش 1.1
    - ارتقاء به نگارش جدید open search api مورد استفاده گوگل
    دریافت:
    http://vahid.nasiri.googlepages.com/BloggerToCHM_1.1_setup.exe
  • #
    ‫۱۵ سال و ۸ ماه قبل، جمعه ۲۳ اسفند ۱۳۸۷، ساعت ۲۱:۱۳
    گوگل ویژگی جالبی داره به نام open search api که روی بلاگر فعال است. با استفاده از این قابلیت این کار میسر شد.
    سایر سرویس دهنده‌ها این قابلیت رو ندارند و نیاز به بررسی بیشتر هست.
  • #
    ‫۱۵ سال و ۸ ماه قبل، یکشنبه ۲۵ اسفند ۱۳۸۷، ساعت ۲۰:۱۳
    سلام استاد.

    خسته نباشید.سورس نرم افزار رو هم ارائه میدی ؟

    چون خودش یه کلاس درس کمای هست.
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۰۴:۱۳
    سلام،
    فعلا زود هست. چون باید تاریخ غیر فارسی رو هم اضافه کنم و یک قالب انگلیسی هم براش درست کنم که برای بقیه دنیا هم قابل استفاده باشه.
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۲:۴۵
    1387/12/26 - 09:12:08: System.ComponentModel.Win32Exception: The system cannot find the file specified
    at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
    at System.Diagnostics.Process.Start()
    at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
    at System.Diagnostics.Process.Start(String fileName)
    at  .()
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۳:۵۹
    سلام،
    برنامه زمانیکه فایل chm رو درست کرد سعی میکنه اون رو نمایش بده. این فایل chm داخل یک فولدر کنار فایل exe درست میشه. لطفا بررسی کنید آیا فایل موجود است و درست شده و همچنین این مسیر به چه صورتی است؟
    مثلا فاصله دارد یا از حروف فارسی درست شده یا ...؟
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۸:۴۱
    فولدرو ساخته میشه ولی فایلی داخلش نیست. نمیدونم روی یه کامپیوتر دیگه امتحان کردم ولی باز نتیجه نداد.
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۸:۵۱
    آره امتحان کردم دید م از آدرس فایل که بصورت زی بود :
    C:\Program Files\BloggerToCHM
    میبینی بین کلمه Program و Files فاصله هست که این خطلا رو تولید میکنه. بخاطر راهنماییتون ممنون.
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۸:۵۵
    چه ویندوزی دارید؟

    چند حدس:
    - html help work shop نصب نشده؟
    - html help work shop نصب شده ولی مسیری که از رجیستری گرفته میشه غلط هست و فایل نهایی ساخته نمیشه.
    به منوی فایل گزینه preferences مراجعه کنید، گزینه delete temp files را false کنید و save . الان یکبار دیگر db to chm رو تست کنید. فایل‌های موقتی حذف نخواهند شد. یک مجموعه کامل تولید می‌شود که فایل blog.hhp آن در html help work shop قابل گشودن و کامپایل است (روش دستی).

    برنامه به صورت خودکار دنبال این مسیر می‌گردد:
    HKEY_CURRENT_USER\Software\Microsoft\HTML Help Workshop
    لطفا بررسی کنید آیا این مسیر اصلا در رجیستری ویندوز هست؟ آیا InstallDir آن درست مقدار دهی شده؟

    با تشکر
  • #
    ‫۱۵ سال و ۸ ماه قبل، دوشنبه ۲۶ اسفند ۱۳۸۷، ساعت ۱۹:۴۹
    از وقتی که گذاشتید و این خطا را اطلاع دادید سپاسگزارم. این مشکل فاصله در آرگومان‌ها برطرف شد. لطفا نگارش جدید را دریافت نمائید:
    http://vahid.nasiri.googlepages.com/BloggerToCHM_1.2_setup.exe
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۲۷ اسفند ۱۳۸۷، ساعت ۰۰:۱۸
    چیزه جالبیه.
    کاش واسه همه ی سرویس ها بود
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۲۷ اسفند ۱۳۸۷، ساعت ۱۳:۴۴
    همه مورهای بالا درسته گفتم که از اون فاصله بود که منم برنامه رو کپی کردنم جای دیگه و حل شد. منم بابت جوابهاتون ممنونم.
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۲۷ اسفند ۱۳۸۷، ساعت ۱۳:۵۷
    من یه سوال هم داشتم اونم اینه که چرا رخداد تایمر توی ویندوز سرویس کار نممیکنه؟
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۲۷ اسفند ۱۳۸۷، ساعت ۱۴:۲۵
    چندین نوع تایمر در دات نت داریم:
    http://icolor2.blogspot.com/2005/12/understanding-c-timers.html

    در ویندوز سرویس از تردتایمر استاندارد استفاد کنید. یک نکته‌ی ریز هم دارد: متغیر شیء مربوطه را باید در سطح کلاس تعریف کنید تا garbage collector آن‌را معدوم نکند و تایمر از کار نیفتد.
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۲۷ اسفند ۱۳۸۷، ساعت ۲۰:۲۵
    پس اگه خواستید سورس رو بدین نمونه وبی اون رو هم بذارین، میدونین خیلی عالی میشد. p;
  • #
    ‫۱۵ سال و ۸ ماه قبل، چهارشنبه ۲۸ اسفند ۱۳۸۷، ساعت ۱۰:۱۸
    پیشاپیش این عید باستانی رو به شما تبریک میگم . امیدوارم سال خوب و خوشی پیش رو داسته باشید
  • #
    ‫۱۵ سال و ۸ ماه قبل، چهارشنبه ۲۸ اسفند ۱۳۸۷، ساعت ۱۲:۲۱
    همچنین برای شما و خانواده محترمتان
  • #
    ‫۱۵ سال و ۸ ماه قبل، چهارشنبه ۲۸ اسفند ۱۳۸۷، ساعت ۱۳:۳۱
    من هم سال نو رو به شما تبریک میگم.
  • #
    ‫۱۵ سال و ۸ ماه قبل، چهارشنبه ۲۸ اسفند ۱۳۸۷، ساعت ۱۴:۰۶
    ممنون. امیدوارم سالی پر از سلامتی و برکت را پیش رو داشته باشید.
  • #
    ‫۱۵ سال و ۸ ماه قبل، پنجشنبه ۲۹ اسفند ۱۳۸۷، ساعت ۰۱:۰۲
    وحید جان برنامه رو ازمایش کردم . فقط میتونم بگم عالیه . مخصوصا فایل خروجی ساخته شده و نوع چیدمان مطالب در ان
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۱۸ فروردین ۱۳۸۸، ساعت ۲۰:۵۲
    سلام من برای sqlite از System.Data.SQLite استفاده کردم ولی یه خطا با محتوای SQLite error no such table: tblLinks بر میخورم
  • #
    ‫۱۵ سال و ۸ ماه قبل، سه‌شنبه ۱۸ فروردین ۱۳۸۸، ساعت ۲۲:۱۵
    سلام،
    من برای کار با SQLite از افزونه زیر استفاده می‌کنم:
    https://addons.mozilla.org/en-US/firefox/addon/5817
    دیتابیس خودتون را با آن باز کنید.
    بعد در برگه execute sql آن، عبارت sql مورد نظر خودتون رو تست کنید تا خطای آن واضح مشخص شود.
    همچنین اینجا می‌توان بهتر دید که آیا جدول مورد نظر وجود دارد یا خیر.
  • #
    ‫۱۵ سال و ۸ ماه قبل، چهارشنبه ۱۹ فروردین ۱۳۸۸، ساعت ۱۴:۲۲
    از این افزونه که توی پستهای قبلی هم معرفی کرده بودید استفاده می کنم، مشکل از آدرس دهی من بود که بنا به پیش فرض SQLite اگه دیتابیس رو پیدا نکنه یه دیتابیس فرضی ایجاد میکنه و چون این جدول رو توی این دیتابیس فرضی پیدا نمیکنه این خطلا رو تولید میکنه. بازهم ممنون.
  • #
    ‫۱۵ سال و ۷ ماه قبل، دوشنبه ۳۱ فروردین ۱۳۸۸، ساعت ۱۵:۱۳
    سلام من میخواستم برای برنامه یه پیشنهاد بدم:
    1. تمامی فایلها داخل یک فولدر به نام Blogs ذخیره شود، یا این که محل ذخیره را کاربر ست کن.
    2. نام فایل کامپایل شده همنام بلاگر آن باشد:
    http://vahidnasiri.blogspot.com -> vahidnasiri.blogspot.com.chm

    البته این چیزهایی هست که من بعد از کار با این برنامه به ذهنم رسید که اگر این امکانات را داشته باشه کاربر با برنامه راحت تر کار میکنه.
  • #
    ‫۱۵ سال و ۴ ماه قبل، پنجشنبه ۲۵ تیر ۱۳۸۸، ساعت ۱۷:۴۸
    نگارش جدید برنامه
    http://vahid.nasiri.googlepages.com/BloggerToCHM_1.3_setup.exe

    سازگار با نگارش جدید API بلاگر
    و ...
  • #
    ‫۱۴ سال و ۲ ماه قبل، چهارشنبه ۳۱ شهریور ۱۳۸۹، ساعت ۲۳:۵۶
    سلام
    برنامه تون بعضی از پستهای قسمتهای مختلف رو ذخیره نمیکنه.
    به عنوان مثال میتونید بخش asp.net رو بعد از دانلود و ذخیره، با پستهای فعلی تون مقایسه کنید.
    و با بعضی وبلاگهای blogspot هم مشکل داره.
  • #
    ‫۱۴ سال و ۲ ماه قبل، پنجشنبه ۱ مهر ۱۳۸۹، ساعت ۰۰:۴۲
    سلام
    - برنامه مشکلی نداره. فقط در مورد تگ‌ها اگر چند مورد باشد فقط مورد اول را در نظر می‌گیرد ولی تعداد کلی پست‌ها تفاوتی نمی‌کند. یک پست می‌تونه در سه تگ هم مطرح بشه ولی نهایتا یک پست است.
    - "بعضی از وبلاگ‌ها" قابل رسیدگی نیست. اگر آدرس دقیق بدید می‌تونم بررسی کنم.
    ضمنا نگارش فعلی هم از آدرس زیر قابل دریافت است:
    http://www.box.net/shared/758dcrfm73
  • #
    ‫۱۴ سال و ۲ ماه قبل، چهارشنبه ۷ مهر ۱۳۸۹، ساعت ۰۷:۲۸
    در win7 x64 این خطا را می دهد: (نسخه1.4 برنامه)


    Date: 1389/07/07 - 03:52:50 - MSG: System.BadImageFormatException: Could not load file or assembly 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139' or one of its dependencies. An attempt was made to load a program with an incorrect format.
    File name: 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139'
    at  . (String )
    at  . ()
    at System.Windows.Forms.Form.OnLoad(EventArgs e)
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    at System.Windows.Forms.Control.CreateControl()
    at System.Windows.Forms.Control.WmShowWindow(Message& m)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    WRN: Assembly binding logging is turned OFF.
    To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
    Note: There is some performance penalty associated with assembly bind failure logging.
    To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

    ------------------------------------
    Date: 1389/07/07 - 03:52:53 - MSG: System.BadImageFormatException: Could not load file or assembly 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139' or one of its dependencies. An attempt was made to load a program with an incorrect format.
    File name: 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139'
    at  . ()
    at  . ()
    at  . (Object , EventArgs )
    at System.Windows.Forms.Form.OnLoad(EventArgs e)
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    at System.Windows.Forms.Control.CreateControl()
    at System.Windows.Forms.Control.WmShowWindow(Message& m)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    WRN: Assembly binding logging is turned OFF.
    To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
    Note: There is some performance penalty associated with assembly bind failure logging.
    To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

    ------------------------------------
    Date: 1389/07/07 - 03:53:00 - MSG: System.BadImageFormatException: Could not load file or assembly 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139' or one of its dependencies. An attempt was made to load a program with an incorrect format.
    File name: 'System.Data.SQLite, Version=1.0.64.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139'
    at  . (String )
    at  . ()

    WRN: Assembly binding logging is turned OFF.
    To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
    Note: There is some performance penalty associated with assembly bind failure logging.
    To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

    ------------------------------------
  • #
    ‫۱۴ سال و ۲ ماه قبل، چهارشنبه ۷ مهر ۱۳۸۹، ساعت ۱۵:۲۰
    سلام،
    SQLite دو نسخه 64 بیتی و 32 بیتی دارد. برای رفع مشکل پکیج زیر را که حاوی هر دو نسخه‌ است نصب کنید:
    SQLite-1.0.65.0-setup.exe
  • #
    ‫۱۳ سال و ۱۰ ماه قبل، پنجشنبه ۳۰ دی ۱۳۸۹، ساعت ۰۳:۰۰
    سلام باز هم یک پیشنهاد جدید، البته باز از نظر من:
    میدونید ممکنه بلاگ هایی رو بخواهید chm کنید ولی همه پست ها رو نخواهید که دانلود بشه پس اینجا یک گزینه برای دانلود پستهایی که دارای تگ خاصی که معمولا در بلاگها تکراری است رو بشه به هنگام دانلود پست ها اعمال کرد.