কমান্ড লাইন সিআরএল দিয়ে পুনঃনির্দেশগুলি অনুসরণ করার কোনও উপায় আছে?


456

আমি জানি যে পিএইচপি স্ক্রিপ্টে:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

পুনঃনির্দেশগুলি অনুসরণ করবে। কমান্ড লাইন সিআরএল দিয়ে পুনঃনির্দেশগুলি অনুসরণ করার কোনও উপায় আছে?

উত্তর:


761

অবস্থান শিরোনাম পতাকা ব্যবহার করুন:

curl -L <URL>


1
এটি স্প্রেডশিট অ্যাক্সেস করতে গুগলের সাথে অনুমোদনের সাথে কাজ করে না। : /
ফতুহোকু

13
man curl: "যখন প্রমাণীকরণ ব্যবহৃত হয়, কার্ল কেবল প্রাথমিক হোস্টকে তার শংসাপত্রগুলি প্রেরণ করে <<...> এটি কীভাবে পরিবর্তন করবেন সে সম্পর্কে - লোকেশন-বিশ্বাসযোগ্যও দেখুন" "
হুডোলেজেভ

25

আমারও একই সমস্যা ছিল। আমি আমার সমাধানটি এখানে পোস্ট করছি কারণ আমি বিশ্বাস করি এটি কোনও মন্তব্যকারীকে সহায়তা করতে পারে।

আমার জন্য, বাধাটি ছিল যে পৃষ্ঠাটির জন্য একটি লগইন প্রয়োজন এবং তার পরে জাভাস্ক্রিপ্টের মাধ্যমে একটি নতুন ইউআরএল দিয়েছি। এখানে আমার যা করতে হয়েছিল তা হল:

curl -c cookiejar -g -O -J -L -F "j_username=yourusename" -F "j_password=yourpassword" <URL>

নোট করুন যে j_username এবং j_password আমার ওয়েবসাইটের লগইন ফর্মের ক্ষেত্রগুলির নাম। আপনার ক্ষেত্রে ব্যবহারকারীর নাম ক্ষেত্রের 'নাম' এবং পাসওয়ার্ড ক্ষেত্রের 'নাম' কী আছে তা দেখতে আপনাকে ওয়েবপৃষ্ঠার উত্সটি খুলতে হবে। এর পরে আমি জাভা স্ক্রিপ্ট সহ একটি এইচটিএমএল ফাইল যাচ্ছি যেখানে নতুন ইউআরএল এম্বেড করা ছিল। এটি বিশ্লেষণের পরে কেবল নতুন ইউআরএল দিয়ে পুনরায় জমা দিন:

curl -c cookiejar -g -O -J -L -F "j_username=yourusename" -F "j_password=yourpassword" <NEWURL>


15

যেমনটি বলা হয়েছে, পুনঃনির্দেশগুলি অনুসরণ করতে আপনি পতাকা ব্যবহার করতে পারেন -Lবা --location:

curl -L http://www.example.com

তবে, আপনি যদি পুনঃনির্দেশের সংখ্যা সীমাবদ্ধ করতে চান তবে পরামিতি যুক্ত করুন--max-redirs

--max-redirs <num>

পুনর্নির্দেশ-অনুসরণের সর্বোচ্চ সংখ্যক সেট করুন Set যদি -L, --locationব্যবহৃত হয়, তবে এই বিকল্পটি কার্লটিকে "অ্যাবারসডামে" অনুসরণ করে পুনর্নির্দেশগুলি থেকে রোধ করতে ব্যবহার করা যেতে পারে। ডিফল্টরূপে, সীমাটি 50 টি পুনর্নির্দেশে সেট করা আছে। সীমাহীন করতে এই বিকল্পটি -1 এ সেট করুন। এই বিকল্পটি কয়েকবার ব্যবহার করা হলে, সর্বশেষটি ব্যবহৃত হবে।

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