我是网络抓取的新手,我对谷歌搜索结果的疤痕提出了这个问题。假设我想根据搜索查询废弃Google前100页的搜索结果,并提取这些网址的文本。我已经尝试了几个代码,到目前为止我还没有能够得到预期的结果,任何人都可以帮我这个.. 这是附加的代码,它获取当前页面的URL并删除访问过的URL,以防它们被访问多次。
from bs4 import BeautifulSoup
from urllib.request import urlopen
from urllib.parse import urljoin
import requests
base_query = 'inurl:www.bbc.com/urdu/pakistan'
base ="http://www.bbc.com.pk/"
google_search_url = 'https://www.google.com.pk/search?q=inurl:www.bbc.com/urdu/pakistan&filter=0&biw=1366&bih=638'
resp = requests.get(google_search_url)
soup = BeautifulSoup(resp.text, "html.parser")
url = []
to_crawl_urls = set()
visited = [] # to check if page was already visited
visited = ["http://www.bbc.com.pk/"]
for cite in soup.find_all('cite'):
url .append( cite.text)
# skip urls already visited
if url in visited or url == google_search_url:
print('... skiping:', url)
# remember new page as visited
visited.append(url)
print("loading:", url)
subpage = urlopen(url)
subsoup = BeautifulSoup(subpage, "html.parser")
# find div with text
for story_body in subsoup.find_all('div', class_='story-body'):
# find title
h1 = story_body.find('h1', class_='story-body__h1')
if h1:
print('title:', story_body.find('h1', class_='story-body__h1').get_text(strip=True))
# find div with paragraphs
div = story_body.find('div', class_='story-body__inner')
# find all paragraphs in dive
for p in div.find_all('p'):
print(p.get_text(strip=True))
答案 0 :(得分:2)
您发送请求的方式存在问题。
您使用网址列表而不是网址发送请求。
请确认这是否是您正在寻找的输出。
代码:
from bs4 import BeautifulSoup
import requests
base_query = 'inurl:www.bbc.com/urdu/pakistan'
base = "http://www.bbc.com.pk/"
google_search_url = 'https://www.google.com.pk/search?q=inurl:www.bbc.com/urdu/pakistan&filter=0&biw=1366&bih=638'
resp = requests.get(google_search_url)
soup = BeautifulSoup(resp.text, "html.parser")
url = []
to_crawl_urls = set()
visited = [] # to check if page was already visited
visited = ["http://www.bbc.com.pk/"]
for cite in soup.find_all('cite'):
url .append(cite.text)
# skip urls already visited
if url in visited or url == google_search_url:
print('... skiping:', url)
# remember new page as visited
visited.append(url)
print("loading:", url)
for i in url:
subpage = requests.get('http://' + i)
subsoup = BeautifulSoup(subpage.text, "html.parser")
# find div with text
for story_body in subsoup.find_all('div', class_='story-body'):
# find title
h1 = story_body.find('h1', class_='story-body__h1')
if h1:
print('title:', story_body.find('h1', class_='story-body__h1').get_text(strip=True))
# find div with paragraphs
div = story_body.find('div', class_='story-body__inner')
# find all paragraphs in dive
for p in div.find_all('p'):
print(p.get_text(strip=True))
输出:
title: تف ہے ایسی جمہوریت پر!
کچھ ممالک اور ان کے رہنما ایک عجب مرض میں مبتلا ہیں۔ یعنی بات بات پر ریفرنڈم اور انتخابات کی جانب بھاگنے کا مرض۔ سوئٹزر لینڈ کا تو یہ حال ہے کہ اگر چند لاکھ لوگ اس یاداشت پر بھی دستخط کر دیں کہ انہیں چھینک لینے کے لیے اوپر کے بجائے نیچے دیکھنے کا اختیار چاہیے تو اس پر بھی ریفرنڈم ہو جاتا ہے۔
برطانیہ میں ڈیوڈ کیمرون کو نہ آئین نے مجبور کیا تھا اور نہ ہی پارلیمنٹ نے کہ وہ یورپی یونین میں رہنے یا نکلنے کے سوال پر ریفرنڈم کروائیں۔ مگر بھولے ڈیوڈ نے چونکہ انتخابی مہم کے دوران جیتنے کے حربے کے طور پر بریگزٹ کے بارے میں عوامی رائے لینے کا وعدہ کر لیا تھا۔ کوئی بتانے والا نہیں تھا کہ میاں ڈیوڈ ایسے سیاستیں نہیں ہوتیں۔ ایک انتخابی وعدے کی اوقات ہی کیا ہے۔ وعدے قرآن و حدیث تھوڑا ہیں۔ مگر نہیں صاحب بریگزٹ کروا کے ہی دم لیا اور اب آدھے برطانوی رو رہے ہیں۔
تاج محل اور ٹرک کی بتی
کچی عمر کا حسن
رہے گا نہ یہ جاہل کا جاہل!
اور یہ سپین میں کیا ہو رہا ہے؟ کاتالونیا میں ملک سے علیحدگی کے سوال پر ریفرنڈم کے نتائج سامنے آنے کے بعد چھتر پھیرنے کا کیا فائدہ؟ ان سے پہلے ہی سختی سے نمٹنا چاہیے تھا۔ لیکن اب بھی وقت ہے۔ سری لنکا، بھارت، پاکستان، ترکی، اسرائیل یا روس وغیرہ کی مشاورت و چھترولی مہارت کاتالونیا کو قابو میں رکھنے کے لیے استعمال کرنے میں کوئی حرج نہیں۔ بعض اوقات ڈاکٹر بدلنے سے بھی افاقہ ہو جاتا ہے۔
سب سے زیادہ ہنسی جاپان پر آتی ہے۔ کوئی ان بے وقوفوں کو بتانے والا نہیں کہ انتخابی عمل ٹشو پیپر نہیں ہوتا کہ جب چاہا استعمال کر لیا۔ دوسری عالمی جنگ کے دوران جاپانیوں نے چلتی لڑائی میں سات اور جنگِ عظیم کے خاتمے سے اب تک 35 وزیرِ اعظم بدلے۔ ان میں سے موجودہ وزیرِ اعظم شنزو آبے سمیت بس پانچ ایسے ہیں جنھوں نے اپنی مدتِ اقتدار مکمل کی۔ لگتا ہے جاپانی زبان میں یہ جملہ ہے ہی نہیں 'مجھے کیوں نکالا‘۔
حالانکہ 11 سابق جاپانی وزرائےاعظم آج بھی زندہ ہیں۔ ملک آج بھی تیسری بڑی اقتصادی سپر پاور ہے۔ پر شوقِ انتخابات بچپنے کی حد تک جواں ہے۔
اب پچھلے سات برس سے اچھے بھلے حکومت چلانے والے شنزو آبے کو اچانک تیسری بار درمیانی مدت کے انتخابات جیتنے کا شوق چرایا ہے اور بہانہ یہ تراشا کہ شمالی کوریا سے لاحق حظرے سے نمٹنے کے لیے نیا مینڈیٹ لینا ضروری ہے۔
پیرانِ سیاست کے پیر
بڑے ہو کے کیا بنو گے؟
گلاب جامن اور سانولی لڑکیاں
ہاں بھئی یہ مٹھی بھر ممالک ایسی پیٹ بھرے کی عیاشیاں کر سکتے ہیں کیونکہ ان کے ہاں انتخابات کے ساتھ صاف و شفاف کا لاحقہ لگانے کا رواج نہیں۔ یہ فقرے بھی سننے کو نہیں ملتے کہ حکومت خیرات میں نہیں عوام کے ووٹوں سے ملی ہے لہذا ہر حال میں مدتِ اقتدار پوری کرے گی۔ ان پیٹ بھرے جمہوری ممالک میں استعفیٰ بھی بہانے بہانے دیا جاتا ہے، لیا نہیں جاتا کیونکہ اہلِ سیاست کو یہ خوف نہیں ہوتا کہ اگلی بار اقتدار کا منہ دیکھنا نصیب ہوگا بھی کہ نہیں۔ اسی لیے ان کے ہاں حکومتیں بالک ہٹ پر اڑنے کے بجائے خود ہی ہٹ جاتی ہیں ہٹائی نہیں جاتیں۔
یقیناً ان مٹھی بھر جمہوری ممالک میں بھی جوڑ توڑ، مار کٹائی اور سازشیں ہوتی ہیں مگر پارلیمنٹ کے اندر ہی اندر۔ ان کی ڈکشنریوں میں بھی اسٹیبلشمنٹ کی اصطلاح ہے مگر مراد بادشاہ گر ٹولہ نہیں بلکہ ماتحت بیورو کریسی ہے۔
ان کے ہاں بھی فوج ہے مگر عام آدمی اپنے انتخابی حلقے سے ہارنے یا جیتنے والے کا تو نام جانتا ہے فوج کے سربراہ کا نام نہیں جانتا۔ ان کے ہاں بھی اعلیٰ عدالتیں اور اعلیٰ جج ہیں مگر صرف وکیل برادری ہی ان کے ناموں سے واقف ہوتی ہے۔ اسی لیے ان ممالک کا میڈیا انتہائی بور اور تھکا ہوا ہے۔
ایسے بے نمک ماحول میں شنزو آبے کی جگہ شیدا مکینک بھی ہوتا تو مڈٹرم الیکشن جیت لیتا۔ پر یہ کیسی ابلی ہوئی جمہوریت ہے؟ نہ دھرنا، نہ سازش، نہ عدالتی کارروائیوں کی پل پل مصالحے دار خبریں، نہ ایک دوسرے کے طفلی، خاندانی، اخلاقی راز اور لغتِ دشنام بھرے بازار میں کھولنا۔۔۔
نہ طلال، نہ فواد، نہ نثار، نہ آئی ایس پی آر، نہ اپنے اپنے آئینی دائرے یا ریاستی رٹ کی بحث، نہ اپنی یا غیر ایجنسیوں کی کارستانیوں کا تذکرہ۔ حتیٰ کہ 'ایک صفحے پر ہونے' کی اصطلاح تک نہیں۔ تو پھر لوکی کی جمہوریت؟ بے ذائقہ، بے رنگ، بے بو ۔۔۔
ایسی جمہوریت تو ہمارے ہاں ہر قبرستان میں ہوتی ہے۔ تف ہے۔۔۔
title: ’پاکستان واقعی ایک حیران کن ملک ہے‘
امریکی شہری کیسنڈرا ڈی پیکول تن تنہا دنیا کے سفر پر ہیں اور 190 ممالک کا سفر طے کرنے بعد وہ پاکستان پہنچی ہیں اور ان کا کہنا ہے کہ 'پاکستان ایک چھپا ہوا جوہر ہے جس کی خوبصورتی تاحال دنیا کے سامنے نہیں آسکی‘۔
27 سالہ امریکی خاتون کیسنڈرا ڈی پیکول نے 15 جولائی 2015 کو دنیا کے تمام 196 خودمختار ممالک دیکھنے کے لیے اپنے سفر کا آغاز کیا تھا۔
ان کا پہلا پڑاؤ مغربی بحرالکاہل کے ایک چھوٹے سے ملک پلاؤ میں ہوا اور ان کا سفر مسلسل جاری رہا اور 190 ممالک کا سفر کرنے کے بعد وہ پاکستان پہنچیں۔
ان کا مقصد کم از کم وقت میں تمام ممالک کا سفر کرکے گینس بک آف ورلڈ ریکارڈ میں اپنا نام شامل کرنا اور دنیا کو سیاحت کے لیے پرامن اور اس شعبے کو مستحکم بنانے کا پیغام دینا ہے۔
اسلام آباد میں بی بی سی اردو سے بات کرتے ہوئے ان کا کہنا تھا کہ 'پاکستان آنے سے قبل ان کے کچھ خدشات تھے جو اب دور ہوچکے ہیں اور وہ دوبارہ یہاں آنا چاہیں گی۔'
'دنیا کے 190 ممالک گھومنے کے بعد میں کہہ سکتی ہوں کہ جن تین ممالک نے مجھے سب سے زیادہ متاثر کیا ان پاکستان، اومان اور بھوٹان سرفہرست ہیں۔'
کیسنڈرا کا کہنا تھا کہ انھوں نے نومنتخب امریکی صدر ڈونلڈ ٹرمپ کا پاکستان کے حوالے سے حالیہ بیان نہیں سنا لیکن ان کا ذاتی تجربہ ہے کہ 'پاکستان واقعی ایک حیران کن ملک ہے مجھے اندازہ نہیں تھا کہ یہاں کے لوگ اور یہاں کی ثقافت انتہائی خوبصورت ہے۔'
کیسنڈرا ڈی پیکول کا کہنا ہے کہ ان کا مقصد تمام دنیا میں امن کا پیغام پہنچانا ہے۔ وہ ایک مسافر بھی ہیں اور سیاحت و سفر کے حوالے سے نوجوانوں کو تربیت اور رہنمائی بھی فراہم کرتی ہیں۔
وہ کہتی ہیں کہ 'پاکستان آنے سے پہلے میں نے اس ملک کے بارے میں بہت کچھ پڑھا اور تحقیق کی لیکن جو کچھ میڈیا دکھاتا ہے پاکستان اس کے بالکل برعکس ہے۔'
ان کا کہنا تھا کہ 'میں نے اپنا برقع اور عبایا بھی ساتھ رکھا ہوا تھا کہ پاکستان میں اس کی ضرورت ہوگی لیکن ابھی تک اس کی ضرورت پیش نہیں ہے۔'
پاکستانی خواتین کے بارے میں ان کا کہنا تھا کہ 'پاکستان میں قیام کے دوران میں بہت سی نوجوان خواتین سے ملی اور مجھے ان کی قابلیت اور اعتماد دیکھ کر بہت اچھا محسوس ہوا۔'
کیسنڈرا نے اس خواہش کا اظہار کیا کہ پاکستان کی شمالی علاقہ جات اور چھوٹے شہروں اور قصبوں کو دیکھنا چاہتی ہیں لیکن اس بار یہ ممکن نہیں ہو سکا۔ ان کا کہنا تھا کہ وہ بہت جلد پاکستان دوبارہ آئیں گی اور اپنی یہ تمنا پوری کریں گی۔
پاکستان میں ان کا قیام کراچی، لاہور اور پھر اسلام آباد میں رہا جہاں یونیورسٹی اور کالجوں کے طالب علموں کے ساتھ انھوں نے مختلف مذاکروں میں حصہ لیا اور انھیں بتایا کہ کیسے اپنے ملک کو اچھے انداز میں پیش کیا جاسکتا اور ایک کامیاب سیاحتی لکھاری بننے کے لیے کیا کچھ کیا جاسکتا ہے۔
ان کا کہنا تھا کہ انھوں نے انڈیا کا بھی سفر کیا ہے اور انھوں نے پاکستان کو انڈیا کی ثقافت، رنگ اور انداز زندگی کو بہت مخلتف پایا۔
انھوں نے بتایا کہ بلاشبہ سیاحت ایک مہنگا شعبہ ہے لیکن آپ پیسے بچاتے ہوئے بھی کئی نئی جگہوں کی سیر کرسکتے ہیں۔
'ایسا نہیں ہے کہ آپ جہاں جائیں بڑے بڑے ہوٹلوں میں رہیں یا پرآسائش گاڑیوں میں سفر کریں۔ آپ ضرورت کے مطابق کسی کم قیمت جگہ پر قیام کر سکتے، وہی کھا سکتے ہیں جو وہاں عام لوگ کھاتے ہیں، ویسے ہی سفر کر سکتے ہیں جیسے مقامی عام لوگ کرتے ہیں۔'
اپنے تجربات بیان کرتے ہوئے ان کا کہنا تھا کہ انھوں نے تقریبا 25 ممالک کا دورہ صرف 2000 ڈالر میں کیا۔ اس دوران وہ ٹرین سٹیشنوں پر سوئیں، بغیر کھائے پیے رہیں اور 'ہچ ہائیکنگ' کرتی ہوئی مشرق وسطیٰ، افریقہ، جنوبی امریکہ اور ایشیا میں گھومیں۔
ان کا کہنا تھا کہ سوشل میڈیا کے ذریعے اب نوجوان بلاگروں اور سیاحت کے حوالے سے لکھنے والوں کے لیے بہت سے دروازے کھل گئے ہیں جن کا بھرپور استعمال کیا جا سکتا ہے۔
کیسنڈرا کا کہنا تھا کہ ان کا اگلی منزل افریقی ملک ارٹیریا ہے اور وہ جلد جنگ زدہ یمن کے سفر پر ہوں گی۔
.
.
.
etc.