কার্ল ব্যবহার করে স্বয়ংক্রিয় ওয়েব অনুরোধ?


13

আমি কিছু "নিগম" সিস্টেম্স আমি কাজে ব্যবহার করতে হবে না। তাদের মধ্যে কেউ কেউ ভয়ানক হয়, ফ্রেম, পপ-আপ এবং এই ধরনের হয়।

আমি কার্ল বা এ জাতীয় কিছু ব্যবহার করে কিছু জিনিস স্বয়ংক্রিয় করার বিষয়ে ভাবছিলাম। আমার লগইন দরকার, হাইপারলিংকে ক্লিক করুন, কিছু ডেটা সেট করুন এবং সেগুলি কিছু পোস্ট করুন।

এটা কার্ল ব্যবহার করা সম্ভব? অথবা আমি ভাল সেলেনিয়াম ভালো কিছু ব্যবহার হতে যাচ্ছি করছি?


1
আমি পাইথন এর ব্যবহার করেন zope.testbrowser যে জন্য।
phunehehe

2
আপনাকে Javascript ব্যবহার করতে সক্ষম হতে প্রয়োজন?
intuited


2
একটি সেশন ব্যবহার করে প্রতিটি অনুরোধের সাথে সেশন আইডি প্রেরণ করা হয়। হয় কোনও কুকিতে বা জিইটি প্যারামিটারে। wgetএবং curlনেটস্কেপ কুকি ফাইল ব্যবহার করতে পারেন, তাই যদি আপনার ব্রাউজার যেমন একটি ব্যবহার, শুধু এটা ডাউনলোডার নির্দিষ্ট করতে আপনাকে যথেষ্ট হতে পারে। সুতরাং, আপনি ব্রাউজারের ধরনের কি ব্যবহার করা হয়?
manatwork

2
তাদের সাথে একটি সহজ সমাধানের জন্য ভাগ্য নেই। ফায়ারফক্স এবং Chrome SQLite ব্যবহার, অপেরা একটি বাইনারি ডাটা ফাইল ফরম্যাট হয়েছে। তোমার মত দেখতে অধিবেশন আইডির জন্য অনুসন্ধান ও ডাউনলোডার ম্যানুয়ালি এটা পাস করতে হবে।
manatwork

উত্তর:


13

হ্যাঁ, এটি কার্ল দিয়ে সম্পূর্ণ সম্ভব। সর্বাধিক গুরুত্বপূর্ণ হ'ল কার্ল ব্যবহারের মধ্যে কুকিগুলি সংরক্ষণ এবং পুনরায় লোড করা --cookie-jar। আপনি প্রয়োজন হিসাবে ফর্ম ডেটা পোস্ট করতে পারেন। আমি যখন কোনও ওয়েবসাইট নেভিগেট করি তখন কী ঘটে তা ক্যাপচার করতে আমি সাধারণত লাইভ এইচটিটিপি শিরোনাম নামে একটি ফায়ারফক্স অ্যাড-অন ব্যবহার করি। এটা কোনো ফর্ম পোস্ট যা খুবই সহায়ক যখন কি গুটিয়ে যাওয়া করতে চিন্তা করার চেষ্টা কোন হেডার রেকর্ড, কিন্তু হবে। আমি বিভিন্ন কার্লের অনুরোধগুলি স্বয়ংক্রিয় করে বাশ স্ক্রিপ্টগুলি লিখেছি mktempএবং ওয়েবপৃষ্ঠায় কিছু সীমাবদ্ধ প্রক্রিয়াকরণ করতে পাইপ এবং অস্থায়ী ফাইলগুলি (সৌজন্যে ) ব্যবহার করেছি , তবে যদি অনেক ওয়েবপৃষ্ঠা প্রসেসিং করতে হয় তবে আমি সাধারণত লিবডাব্লুডাব্লুউইউ দিয়ে পার্লে স্যুইচ করি।


ফায়ারফক্স লাইভ HTTP- র শিরোলেখ ছাড়াও, উভয় সাফারি এবং Chrome হেডার ওয়েব ইন্সপেক্টর বস্তুর ভিত্তিতে আলাদা করে প্রদর্শন করতে পারেন।
বাহামাত

15

সহজ ক্ষেত্রে জন্য ডাউনলোড করার একটি পৃষ্ঠায়, ব্যবহার বিষয়বস্তু কার্ল বা wget হয় । উভয় HTTP- র মাধ্যমে ফাইল ডাউনলোড করার জন্য ডিজাইন করা কমান্ড লাইন সরঞ্জাম এবং অনেক অপশন আছে। আপনার ক্ষেত্রে, আপনার সম্ভবত এই সরঞ্জামগুলি আরও ব্রাউজারের মতো করে তুলতে হবে; lutzky এর উত্তর এবং penguin359 এর উত্তর কিছু গুটিয়ে রাখতে এবং wget হয় বিকল্প যে সম্মান উপযোগী উল্লেখ।

কখনও কখনও, যখন আপনাকে লগ ইন করার দরকার হয় , প্রথমে কোনও ওয়েব ব্রাউজারে ম্যানুয়ালি লগইন করা খুব সহজ, তারপরে ওয়েব ব্রাউজারের কুকিজ রফতানি করুন ( ফায়ারফক্সের জন্য অলকুকি বা এক্সপোর্ট কুকিজের মতো এক্সটেনশনগুলি সহায়তা করতে পারে)।

আপনার যদি কিছু পৃষ্ঠাগুলি বা পোস্ট ফর্মের বিষয়বস্তু বিশ্লেষণ করতে হয় তবে কার্ল এবং উইজেটের চেয়ে আপনার ফ্যানসিয়ার সরঞ্জামের প্রয়োজন হতে পারে। কিছু ভাল সরঞ্জাম রয়েছে (libwww) এবং (এইচটিএমএল-ট্রি) সহ স্ট্যান্ডার্ড লাইব্রেরি (বিশেষত এবং ) সহ পাইথন ।LWPHTML::TreeBuilderhttplibhtmllib

কোনও ওয়েবসাইটের সাথে আরও জটিল মিথস্ক্রিয়াগুলির জন্য , রেফারেন্সটি পার্লের ডাব্লুডাব্লুডাব্লু :: মেকানাইজ । এই পার্ল গ্রন্থাগারটি কোনও ওয়েব ব্রাউজারের মতো ওয়েবসাইটের সাথে ইন্টারঅ্যাক্ট করার জন্য উচ্চ-স্তরের ফাংশনগুলি সংজ্ঞায়িত করে, যেমন পোস্টিং, ফর্ম, কুকিজ, তবে জাভাস্ক্রিপ্ট নয়। পার্ল যদি আপনার চায়ের কাপ না হয় তবে এই লাইব্রেরিতে অন্যান্য ভাষার যেমন পাইথন মেকানাইজেশন এবং রুবি মেকানিকাইজে অনুরূপ ক্ষমতা সহ নকল রয়েছে ।

অবশেষে, যখন আপনি প্রয়োজন জাভাস্ক্রিপ্ট স্বাভাবিক পদ্ধতির একটি ওয়েব ব্রাউজার যা একটি ব্রাউজার অটোমেশন কাঠামো দ্বারা চালিত হয় ব্যবহার করা হয়। সেলেনিয়াম এবং Watir জনপ্রিয় পছন্দ হয়; এছাড়াও দেখুন সেলেনিয়ামআরসির পাশাপাশি জাভাস্ক্রিপ্ট দ্বারা পোস্ট করা সামগ্রী সহ ওয়েবপৃষ্ঠাগুলি আনতে পারে এমন কোনও ভাল সরঞ্জাম আছে কি?


6

আমার প্রিয় wget, তাই আমি এটি দিয়ে একটি উদাহরণ দেব। আপনি যা করতে চান তা হ'ল আপনার ব্রাউজার সেশনটিকে যথাসম্ভব কাছাকাছিভাবে প্রতিলিপি করা, সুতরাং প্রাসঙ্গিক কমান্ডলাইন যুক্তিগুলি ব্যবহার করুন। যার প্রয়োজনীয় কিভাবে পুঙ্খানুপুঙ্খভাবে সাইটটি আপনার ব্রাউজার চেকস উপর নির্ভর করে। --referer(এসআইসি) সাধারণত যথেষ্ট, কিন্তু আপনি প্রয়োজন হতে পারে --user-agentএবং --load-cookies

এই কৌশলটি মূলত ব্রাউজার স্পুফিং - আপনি পেতে চেষ্টা করছেন wgetব্রাউজার হিসাবে সাইট থেকে নিজেকে উপস্থাপন করতে। সবচেয়ে বড় সমস্যা আপনি সম্মুখীন হবেন ক্যাপচা, যা উদাহরণস্বরূপ সাইট দিয়েছি উপস্থিত হয় না। এছাড়াও, নিশ্চিত করুন যে আপনি সাইটের সময়জ্ঞান নীতিসমূহ (এই ক্ষেত্রে 45 সেকেন্ড) মেনে চলতে করতে, অথবা আপনি সম্ভবত অবরুদ্ধ পাবেন।

এটা সম্ভবত এর না সাইটি কোনো নির্দিষ্ট অধিবেশন নির্দিষ্ট ফাইলের উপর বিশেষাধিকার ডাউনলোড করার অনুদান - সম্ভব বিভিন্ন সেশন জুড়ে একই ফাইল ডাউনলোড করতে।


ব্যাপক বিবেচনার সাথে ভাল উত্তর। ধন্যবাদ
xiaohan2012
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.